离线部署Docker(离线部署docker可视化界面及Zfile)

离线部署Docker(可视化界面及Zfile)

  • linux离线安装docker

1. 从官方下载Docker安装包并上传至虚拟机 https://download.docker.com/linux/static/stable/x86_64/

2.解压安装包

tar -xvf docker-25.0.3.tgz

3.将解压出来的docker文件内容移动到 /usr/bin/ 目录下

#移动命令 复制命令请用cp
sudo mv docker /* /usr/bin/
 

4.将docker注册为service服务

vi /etc/systemd/system/docker.service

在打开的docker.service 文件中写入以下代码:

[Unit] 
# 服务的描述信息 
Description=Docker Application Container Engine 
# 服务的文档链接 
Documentation=https://docs.docker.com 
# 服务启动顺序,确保在网络和防火墙服务之后启动 
After=network-online.target firewalld.service 
# 表明该服务希望与 network-online.target 同时启动 
Wants=network-online.target 
[Service] 
# 服务类型,notify 表示当服务准备好后,会发送一个信号给 systemd 
Type=notify 
# 默认情况下不使用 systemd 管理 cgroups,因为还存在代理问题,并且 systemd 目前不支持 Docker 容器所需的 cgroup 功能集 
# 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 
# 由于内核中的会计开销,非零的 Limit* 会导致性能问题。我们建议使用 cgroups 进行容器本地会计。 
# 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 
# 如果你的 systemd 版本支持,可以取消注释 TasksMax。仅 systemd 226 及更高版本支持此功能。 
# Uncomment TasksMax if your systemd version supports it. 
# Only systemd 226 and above support this version. 
#TasksMax=infinity 
# 启动超时时间 
TimeoutStartSec=0 
# 设置 delegate 为 yes,以便 systemd 不重置 Docker 容器的 cgroups 
# set delegate yes so that systemd does not reset the cgroups of docker containers 
Delegate=yes 
# 只杀死 Docker 进程,而不是 cgroup 中的所有进程 
# kill only the docker process, not all processes in the cgroup 
KillMode=process 
# 如果 Docker 进程过早退出,则重新启动它 
# restart the docker process if it exits prematurely 
Restart=on-failure 
# 在给定的时间间隔内,如果服务启动失败次数超过 StartLimitBurst 指定的值,则 systemd 会认为该服务启动失败 
StartLimitBurst=3 
# 在 StartLimitInterval 秒内,服务启动失败的次数达到 StartLimitBurst 指定的值后,系统会将服务标记为失败状态 
StartLimitInterval=60s 
[Install] 
# 服务启动时想要的目标 
WantedBy=multi-user.target

5.设置权限,启动docker

chmod +x /etc/systemd/system/docker.service #设置权限
systemctl daemon-reload
systemctl start docker            #启动Docker
systemctl enable docker.service   #设置开机自启

6.验证

systemctl status do	cker  #查看Docker状态
docker -v                 #查看Docker版本
7.添加用户权限
# 使用sudo权限添加一个新的用户组名为docker  
sudo groupadd docker  
# 使用sudo权限将当前用户($USER代表当前用户)附加到docker用户组中  
# -a选项表示将用户添加到附加组,而不是替换用户当前所在的所有组  
# -G选项后面跟的是用户组名,这里指定为docker  
sudo usermod -aG docker $USER

  • 导出镜像

在有网的机器上安装部署所需镜像列出已下载的镜像:导出镜像为tar文件,这里使用可视化面板的镜像导出按钮,直接将需要的镜像导出。

命令导出方法:

docker save 镜像名/镜像ID -o 镜像保存在哪个位置与名字

示例:

docker save offline-map -o /offlinemap.tar 镜像名:tag
  • 将tar文件传输到无网络的机器

具体传输方式,因地制宜。

  • 在无网络的机器上加载镜像

在有Docker但没有网络的机器上

使用以下命令导入镜像

docker load -i 包名称.tar
示例: sudo docker load -i fast-docker-可视化镜像.tar
示例: sudo docker load -i Zfile-centos-docker镜像.tar

Docker命令创建可视化容器:

sudo docker run --restart always --name fast -p 8081:8081 -d -v /var/run/docker.sock:/var/run/docker.sock wangbinxingkong/fast

这个命令的含义如下:

    --restart always:如果容器退出,总是自动重启容器。

    --name fast:给容器命名为fast。

    -p 8081:8081:将宿主机的8081端口映射到容器的8081端口。

    -d:在后台运行容器(分离模式)。

    -v /var/run/docker.sock:/var/run/docker.sock:将宿主机的/var/run/docker.sock文件挂载到容器的相同位置,这通常用于让容器内的进程能够与Docker守护进程通信。

    wangbinxingkong/fast:要使用的Docker镜像名称。

Docker命令创建Zfile容器:

sudo docker run -d \
    --name=zfile \
    --restart=always \
    -p 8080:8080 \
    -v /root/zfile/conf:/root/.zfile-v4 \
    -v /root/zfile/data:/root/zfile/data \
    stilleshan/zfile
wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

重启docker,查看所有容器

sudo systemctl restart docker               #重启docker

docker ps -a                                #查看所有容器

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YeMu11

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值