首页 > 系统相关 >Linux(Ubuntu、Centos)环境安装部署Docker及Docker-compose

Linux(Ubuntu、Centos)环境安装部署Docker及Docker-compose

时间:2022-11-04 15:23:38浏览次数:31  
标签:compose Centos apt echo Docker docker dir software

Centos7安装Docker环境

# 安装依赖
yum install -y yum-utils device-mapper-persistent-data lvm2
# 设置yum源(选择其中一个)
yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo(中央仓库)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo(阿里仓库)
# 查看yum 源上docker版本
yum list docker-ce --showduplicates | sort -r
# 安装需要的版本
yum install docker-ce-18.03.1.ce
启动服务
systemctl start docker
systemctl enable  docker


Ubuntu 16.04安装docker

#由于apt官方库里的docker版本可能比较旧,所以先卸载可能存在的旧版本:
sudo apt-get remove docker docker-engine docker-ce docker.io
 #更新apt包索引:
 sudo apt-get update
 #安装以下包以使apt可以通过HTTPS使用存储库(repository):
 sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common
#添加Docker官方的GPG密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
#使用下面的命令来设置stable存储库:
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
 #再更新一下apt包索引:
 sudo apt-get update
  #安装最新版本的Docker CE:
 sudo apt-get install -y docker-ce
 #查看docker服务是否启动:
 sudo systemctl status docker
#若未启动,则启动docker服务:
 sudo systemctl start docker



Docker 脚本安装

 

#!/bin/bash
docker_software="docker-19.03.9"
docker_download_link="https://download.docker.com/linux/static/stable/x86_64/"
docker_service="/usr/lib/systemd/system/docker.service"
registry_mirrors="https://7hsct51i.mirror.aliyuncs.com"
docker_dir_base="/data/docker"
docker_dir_bin="${docker_dir_base}/bin"
docker_dir_conf="${docker_dir_base}/conf"
docker_dir_data="${docker_dir_base}/data"
 
# 如下自动执行
mkdir -p ${docker_dir_bin}
mkdir -p ${docker_dir_conf}
mkdir -p ${docker_dir_data}
# 安装wget
rpm -q wget > /dev/null 2>&1
if [ "$?" -ge 1 ];then
    echo "install wget,Please wait..."
    yum -y install wget > /dev/null 2>&1
    rpm -q wget > /dev/null 2>&1
    [ $? -ge 1 ] && echo "wget installation failure,exit" && exit
     echo "安装wget 成功"
fi
# 下载软件包并解压
if [ ! -f ${docker_software}.tgz ];then
    echo "正在下载安装包:${docker_software}.tgz"
    wget ${docker_download_link}${docker_software}.tgz
    [ ! -f ${docker_software}.tgz ] && echo "${docker_software}.tgz download failure,exit" && exit
else
    echo "安装包已存在:${docker_software}.tgz"
fi
mkdir -p ${docker_dir_bin}
tar zxvf ${docker_software}.tgz -C ${docker_dir_base} > /dev/null 2>&1
if [ "$?" != 0 ];then
    echo "${docker_software}.tgz 解压失败,退出程序" && exit
fi
mv -f ${docker_dir_base}/docker/* ${docker_dir_bin} > /dev/null 2>&1
find ${docker_dir_bin} -type f | xargs -i ln -sfn {} /usr/local/bin/
echo "${docker_software}.tgz下载解压完成"
# Sytemctl 管理
cat > ${docker_service} << EOF
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target
Wants=network-online.target
 
[Service]
Type=notify
ExecStart=${docker_dir_bin}/dockerd \
--config-file ${docker_dir_conf}/daemon.json \
--data-root ${docker_dir_data} \
-H tcp://0.0.0.0:8088 -H unix:///var/run/docker.sock
ExecReload=/bin/kill -s HUP \$MAINPID
TimeoutSec=0
RestartSec=2
Restart=always
StartLimitBurst=3
StartLimitInterval=60s
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TasksMax=infinity
Delegate=yes
KillMode=process
 
[Install]
WantedBy=multi-user.target
EOF
echo "Sytemctl 管理配置完成:${docker_service}"
# 镜像加速
mkdir -p ${docker_dir_conf}
cat > ${docker_dir_conf}/daemon.json << EOF
{
  "registry-mirrors": ["${registry_mirrors}"]
}
EOF
echo "镜像加速配置完成:${docker_dir_conf}/daemon.json"
# 启动docker
systemctl daemon-reload
systemctl restart docker.service
# 开机启动
echo "配置开机启动"
systemctl enable docker
echo "测试docker,运行容器:hello-world"
docker run hello-world
clear
cat << EOF
${docker_software} 版本,成功安装
相关信息:
base docker安装目录:${docker_dir_base}
bin  执行文件目录:${docker_dir_bin}
conf 配置文件目录:${docker_dir_conf}
data 数据存储目录:${docker_dir_data}
EOF


Docker-Compose 二进制脚本安装

 

#!/bin/bash
docker_compose='docker-compose'
# 下载软件包并解压
if [ ! -f ${docker_compose}* ];then
    echo "正在下载安装包:${docker_compose}"
    curl -L https://github.com/docker/compose/releases/download/1.29.2/docker-compose-Linux-x86_64 -o ./${docker_compose}
    [ ! -f ${docker_compose}* ] && echo "${docker_compose} download failure,exit" && exit
else
    echo "安装包已存在:${docker_compose}"
fi
chmod 777 ${docker_compose}
mv -f ${docker_compose} /usr/local/bin
${docker_compose}
if [ "$?" -eq 0 ];then
    clear && echo "安装${docker_compose}成功"
fi
docker-compose

标签:compose,Centos,apt,echo,Docker,docker,dir,software
From: https://www.cnblogs.com/wuchangsoft/p/16857896.html

相关文章

  • admin.net框架docker部署
    前端dockerrun-id-p81:80-v/root/docker/ioms/conf/nginx:/etc/nginx-v/root/docker/ioms/logs/:/var/log/nginx-v/root/docker/ioms/www/:/usr/share/nginx/ht......
  • Installing MySQL-8028 on CentOS 8.3
    一、InstallingMySQL-8028onCentOS8.31地址https://www.mysql.comhttps://downloads.mysql.com/archives/community2下载图片 二、下载&解压1wge......
  • Android Compose 修饰符类行为整理
    前言compose修饰符用来对界面组件装饰,类似ViewTree系统的组件属性,compose对于修饰符用法做了限制,RowScope,ColumScope,BoxScope,等等限制为仅可以在这些组件使用的修饰符......
  • JetPack compose 状态提升(二)
    前言状态管理是时使用JetPackcompose开发必须掌握的知识,为了提高可组合函数的复用率.通常会将状态从可组合函数之中提升到可组合函数外面。JetpackCompose中的常规状态......
  • BI系统打包Docker镜像及部署的技术难度和实现
    BI系统打包Docker镜像及部署的技术难度和实现随着容器化技术盛行,Docker在前端领域也有着越来越广泛的应用;传统的前端部署方式需要我们将项目打包生成一系列的静态文件,然后......
  • Docker安装Harbor证书:Error response from daemon: Get "https://xx.xx.xx/v2/": x509
    自建harbor仓库ssl证书过期之后,更换了ssl证书。jenkins流水线无法登录harbor镜像仓库、且无法拉取镜像时报,报错信息如下:Errorresponsefromdaemon:Get"https://xx.......
  • centos下将vim配置为强大的源码阅读器
    每日杂事缠身,让自己在不断得烦扰之后终于有了自己的清静时光来熟悉一下我的工具,每次熟悉源码都需要先在windows端改好,拖到linux端,再编译。出现问题,还得重新回到windows端,这......
  • Docker安装Nacos
    创建本地的映射文件mkdir-p/root/nacos/init.d/root/nacos/logstouch/root/nacos/init.d/custom.properties在文件中写入配置management.endpoints.web.expo......
  • SpringCloud (五) - 云服务器Centos7.6,安装JDK,Maven,Mysql,Redis
    1、购买云服务器购买地址:https://cloud.tencent.com/act/pro/2022double11_warmup后面的环境都是基于此环境Centos7.6;2、安装SecureCRT和SecureFX2.1SecureCRT教......
  • VirtualBox 下 CentOS7 静态 IP 的配置 → 多次踩坑总结,蚌埠住了!
    开心一刻一个消化不良的病人向医生抱怨:我近来很不正常,吃什么拉什么,吃黄瓜拉黄瓜,吃西瓜拉西瓜,怎样才能恢复正常呢?医生沉默片刻:那你只能吃屎了环境准备Virt......