centos离线部署docker

这篇具有很好参考价值的文章主要介绍了centos离线部署docker。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

有些内部环境需要离线部署,以下做一些备忘。
环境:centos7.9

准备文件:

  • docker-20.10.9.tgz,下载地址 https://download.docker.com/linux/static/stable/x86_64/
  • docker.service,内容见下文
  • daemon.json,内容见下文
  • install.sh,内容见下文
  • docker-compose-linux-x86_64,按需,有需要docker-compose则安装,下载地址https://github.com/docker/compose/releases

以上5个文件都放在同一个目录下
注意:由于此次服务器挂载盘在 /data,所以把docker的存储目录放在 /data/docker 下,可以按需修改 install.sh 和 daemon.json

1.创建docker.service

通过 vi docker.service,将以下内容拷贝进去

[Unit]
 
Description=Docker Application Container Engine
 
Documentation=https://docs.docker.com
 
After=network-online.target firewalld.service
 
Wants=network-online.target
 
 
[Service]
 
Type=notify
 
# the default is not to use systemd for cgroups because the delegate issues still
 
# exists and systemd currently does not support the cgroup feature set required
 
# for containers run by docker
 
ExecStart=/usr/bin/dockerd
 
ExecReload=/bin/kill -s HUP $MAINPID
 
# Having non-zero Limit*s causes performance problems due to accounting overhead
 
# in the kernel. We recommend using cgroups to do container-local accounting.
 
LimitNOFILE=infinity
 
LimitNPROC=infinity
 
LimitCORE=infinity
 
# Uncomment TasksMax if your systemd version supports it.
 
# Only systemd 226 and above support this version.
 
#TasksMax=infinity
 
TimeoutStartSec=0
 
# set delegate yes so that systemd does not reset the cgroups of docker containers
 
Delegate=yes
 
# kill only the docker process, not all processes in the cgroup
 
KillMode=process
 
# restart the docker process if it exits prematurely
 
Restart=on-failure
 
StartLimitBurst=3
 
StartLimitInterval=60s
 
 
[Install]
 
WantedBy=multi-user.target

2.创建 daemon.json

通过 vi daemon.json ,将以下内容拷贝进去

{
	"iptables":false,
	"data-root":"/data/docker",
	"storage-driver":"overlay2",
	"log-level":"INFO",
	"log-driver":"json-file",
	"log-opts": {
		"max-size": "100m",
		"max-file":"5"
	},
	"registry-mirrors":["http://hub-mirror.c.163.com"]
}

3.创建 install.sh

通过 vi install.sh ,将以下内容拷贝进去

# install.sh
#!/bin/sh
echo '创建docker group'
groupadd docker
gpasswd -a root docker
# 还可以创建普通用户 lin 然后加入, useradd lin ; gpasswd -a lin docker
echo 'docker开始安装...'
echo '解压tar包...'
tar -xvf ./docker-20.10.9.tgz
chown root:docker docker/*
echo '将docker目录移到/usr/bin目录下...'
mv docker/* /usr/bin/
echo '将docker.service 移到/etc/systemd/system/ 目录...'
cp -f ./docker.service /etc/systemd/system
echo '添加文件权限...'
chmod +x /etc/systemd/system/docker.service

echo '创建docker root...'
# 这个目录根据自己修改,相应修改daemon.json的root属性
mkdir /data/docker
echo '创建docker daemon.json ...'
mkdir /etc/docker
cp daemon.js /etc/docker/
echo '重新加载配置文件...'
systemctl daemon-reload
echo '设置开机自启...'
systemctl enable docker.service
echo '启动docker...'
systemctl start docker
if ! docker -v; then
echo "docker 安装失败..."
exit -1
fi
echo 'docker安装成功...'
echo '防火墙添加 masquerade'
# daemon.json 配置了iptables: false,所以增加masquerade,让容器可以访问外部
firewall-cmd --zone=public --add-masquerade --permanent
firewall-cmd --reload

# 按需安装docker-compose,不需要则不执行
echo '安装docker-compose...'
mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose
echo '添加 docker-compose 执行权限...'
chmod +x /usr/local/bin/docker-compose
if ! docker-compose -v; then
echo "docker-compose 安装失败..."
exit -1
fi
echo 'docker-compose 安装成功...'

4.执行:

可以对着 install.sh 命令逐步执行,也可以直接执行install.sh,sh +x install

注意:
1.以上执行都是用户root下,,如果是普通用户,则需加sudo,且有root权限
2.daemon.json 加了 “iptables”:false,如果启动了防火墙firewall,那么docker容器的端口是封闭的,需要开放才能访问,例如pg数据库容器5432:
#方式1:完全开放
firewall-cmd --zone=public --add-port=5432/tcp --permanent
#方式2:针对ip段开放(推荐)
firewall-cmd --permanent --add-rich-rule=“rule family=“ipv4” source address=“192.168.16.1/24” port protocol=“tcp” port=“5432” accept”
最后 firewall-cmd --reload
当然,可以将"iptables":false 这个配置去掉,则docker容器暴露的端口不用开防火墙策略

以此备忘!文章来源地址https://www.toymoban.com/news/detail-635083.html

到了这里,关于centos离线部署docker的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux离线arm环境安装部署docker详细教程

    1、下载 通过官网下载docker安装包,找arm环境的安装包,如果是x86环境可以下载对应的安装包 Index of linux/static/stable/aarch64/ 2、上传到服务器上,通过rz命令 上传成功后解压 tar -xvf docker-24.0.6.tgz  3. 复制文件到 /usr/bin cp ./docker/* /usr/bin 4. 创建docker.service vim  /etc/systemd/system/doc

    2024年02月03日
    浏览(46)
  • Centos /Linux环境下利用Docker 安装mysql5.7镜像(含离线安装),启动mysql镜像并初始化数据库

    使用有网的服务器下载好镜像 保存下载好的镜像成tar 将镜像上传到所需服务器(放在固定位置) 导入镜像 注意名称,这里的mysql5.7和上面打包 docker save imageid mysql5.7 的名称一致,本例未改名 查看导入的镜像,并重新命名镜像 创建本地数据库目录、配置文件以及日志目录(

    2024年02月10日
    浏览(74)
  • linux(centos7)离线安装A100显卡驱动cuda/cudnn 以及解决docker not select device driver...gpu

    1.确认GPU型号和操作系统版本,本示例中以A100以及操作系统为Centos 7.9进行操作。 准备GPU驱动和CUDA 11.2软件包,在nvidia官网进行驱动包和CUDA包下载 链接: link linux系统均选择 Linux 64-bit CUDA Toolkit选择最新版本 如您需要老版本CUDA,请前往老版本CUDA下载 本示例中使用CUDA 11.2。 访

    2024年02月15日
    浏览(50)
  • 【Linux | Docker基础篇】CentOS 7 安装 Docker并部署halo博客CMS详细图文教程

    目录 一、docker等名词简介 Docker 的核心概念 Docker 的优势 使用场景 二、docker安装步骤 1).卸载旧版本 2).安装依赖包 3).安装软件包 4).设置 stable 镜像仓库 5).更新 yum 软件包索引 6).安装 Docker 引擎 7).启动 Docker 8).测试是否安装成功 9).卸载docker 三、配置镜像加速 四、

    2024年02月21日
    浏览(49)
  • centos 离线环境安装docker

    1.下载docker 其他版本在上级目录选择下载 https://download.docker.com/linux/static/stable/x86_64/ 2.下载的文件上传到centos服务器上并解压 3.复制解压目录中的文件到 /usr/bin 下 4.创建docker服务 创建文件并写入 vim /etc/systemd/system/docker.service 下面内容 5.给文件设置权限 6.重启daemon-reload 执行后

    2024年02月07日
    浏览(43)
  • CentOS7.9.离线安装Docker

    CentOS 7上离线安装Docker 下载适用于CentOS 7的Docker安装包: 将下载的 docker-24.0.4.tgz 文件上传到CentOS 7系统。例如,可以上传到 /root 目录下。 解压 docker-24.0.4.tgz 文件: 将解压出的所有Docker文件复制到 /usr/bin/ 目录下: 注册Docker为服务,进入 /etc/systemd/system/ 目录,并创建 docker

    2024年02月15日
    浏览(44)
  • Centos7.6离线安装docker

    一、Docker安装 1、安装环境: 系           统: CentOS Linux release 7.6.1810 (Core) Docker版本: 19.03.5 2、下载离线安装包 docker安装包下载:https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-19.03.5-3.el7.x86_64.rpm 依赖包下载: containerd.io :https://download.docker.com/linux/centos/7/x86

    2024年02月09日
    浏览(39)
  • CentOS下安装Docker(内网离线安装)

    在某些没有网络的状态下,安装docker的话,就不能直接使用yum安装,只能能通过把必要的依赖和RPM包拷进U盘来安装。 1.docker需要依赖 libcgroup库 2.docker需要依赖device-mapper系列 并且该系列包版本号大于1.02.79 离线包下载:Docker离线安装 docker的默认路径是/var/lib/docker,但是有时候

    2024年02月13日
    浏览(50)
  • CentOS7.9离线安装Docker环境

    1. 下载合适的Docker安装包 Docker安装包下载地址: Index of linux/static/stable/x86_64/ https://download.docker.com/linux/static/stable/x86_64/ 进入地址页面,如下图: 我下载的是: docker-23.0.1.tgz 版本 2. 将下载好的Docker安装包上传到服务器上,我这边是上传到了 /root  目录下 3. 解压  docker-23.0.

    2024年02月07日
    浏览(56)
  • Docker之centos7环境离线安装

      Docker是一个开源的应用容器引擎,可以让开发者将应用及其依赖打包在一个虚拟的容器中,方便地部署、移植、升级和管理。Docker可以运行在Linux、Windows和MacOS等操作系统上,并且可以在不同的平台之间进行交互和迁移。Docker的主要特点包括轻量级、快速、易于使用、可

    2024年02月10日
    浏览(59)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包