阿里云服务器离线安装Docker

1.前言

  正常有网的情况下,我们都可以轻松地安装docker,是so-easy的,那在没有联网或者网络不通的环境下如何安装docker呢?下面这篇文章我给大家一 一解答,写这篇文章是由于之前在的一家公司项目要上线,使用的是阿里云上的服务器,所以就在无网的环境下实践安装docker,随便记录下这个过程。

2.准备

    2.1)docker的安装包官网下载地址:

https://download.docker.com/linux/static/stable/
https://download.docker.com/linux/static/stable/x86_64/

选择自己的计算机类型,然后下载对应的版本,这里下载的是:

 或者如果网路通的话可以使用wget下载到服务上。

2.2)准备两个docker需要的文件

 docker.service 和 docker.socket 文件 GitHub 地址

https://github.com/moby/moby/tree/master/contrib/init/systemd

 

这也是这版本20.x坑的一个地方,它的运行需要这两个文件,不然会报错的。

 

3.安装

 官网的二进制包安装参看:

https://docs.docker.com/install/linux/docker-ce/binaries/#install-static-binaries

3.1)上传安装包、docker.service 和 docker.socket 文件到服务器的/opt/docker,这个路径可以自行指定:

在/opt/docker路径下解压安装包:

tar xzvf docker-xxxx.tar

将docker.service 和 docker.socket 文件传到如下路径: 

 给这两个文件授权:

chmod +x /etc/systemd/system/docker.service
chmod +x /etc/systemd/system/docker.socket

3.2)将解压出来的 docker 文件所有内容移动到 /usr/bin/ 目录下

sudo cp docker/* /usr/bin/

3.3)开启 docker 守护进程(这个与常规安装方式不一样) 

sudo dockerd &

 3.4) 查docker,设置开机启动

sudo docker images
sudo docker ps -a
sudo docker --version
sudo docker info

#先重启 systemctl 守护进程
$ sudo systemctl daemon-reload
# 再开启 docker 服务
$ sudo systemctl start docker
# * 如果上一行代码显示失败,那么重启电脑再重试上面两行命令 *
$ sudo reboot
# 开机自启
sudo systemctl enable docker

 3.5)配置阿里的镜像加速地址:

3.5.1)设置镜像加速地址:下面是我自己的阿里云镜像加速地址,可以去阿里云申请一个自己的账号,然后会获得一个镜像加速的地址,

 1、阿里云docker仓库

https://dev.aliyun.com/search.html

2、进去注册账号后,点击自己的管理中心。

3、在管理中心点击加速器,右边面板会有你的加速地址,右边面板下面有详细设置步骤。这里以Centos为例:

通过修改daemon配置文件/etc/docker/daemon.json来使用加速器:

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["xxxxxxxxxxxxx"]
}

EOF

3.5.2)重新加载配置文件、设置开机启动并启动docker服务(逐步运行) 

systemctl daemon-reload #重新加载配置文件
systemctl enable docker #设置开机重启
systemctl start docker #启动docker服务

启动docker服务后,查看docker状态。然后重启后,重新查看docker服务状态

systemctl status docker #查看docker状态
reboot 
#重启linux
systemctl status docker #查看docker状态

4.验证

    运行hello-world的镜像:是否能正常运行?

docker run hello-world
docker ps -a | grep hello-world
docker logs -f xxxx 镜像id

5.拓展

   5.1)shell脚本安装

# 创建
vim /opt/docker/install.sh

  内容如下:

#!/bin/sh
echo '解压tar包...'
tar -xvf $1
echo '将docker目录移到/usr/bin目录下...'
cp docker/* /usr/bin/
echo '将docker.service和docker.socket 移到/etc/systemd/system/ 目录...'
cp docker.service /etc/systemd/system/
cp docker.socket /etc/systemd/system/
echo '添加文件权限...'
chmod +x /etc/systemd/system/docker.service
chmod +x /etc/systemd/system/docker.socket
echo '重新加载配置文件...'
systemctl daemon-reload
echo '启动docker...'
systemctl start docker
echo '设置开机自启...'
systemctl enable docker.service
echo 'docker安装成功...'
docker -v

  在当前安装脚本所在路径执行: 

sh install.sh docker-xxxx.tgz

 5.2)shell脚本卸载:

vim /opt/docker/uninstall.sh

内容如下: 

#!/bin/sh
echo '删除docker.service...'
rm -f /etc/systemd/system/docker.service
echo '删除docker文件...'
rm -rf /usr/bin/docker*
echo '重新加载配置文件'
systemctl daemon-reload
echo '卸载成功...'

当要卸载的时候在uninstall脚本所在路径下执行:

sh uninstall.sh

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值