离线安装Docker
下载docker的安装文件
https://download.docker.com/linux/static/stable/x86_64/ 下载自己合适的版本,这里下载20.10.21
linux ubuntu离线安装docker
将下载的,解压出来的docker文件内容移动到 /usr/bin/ 目录下
cp -Rfp ./docker/* /usr/bin
将docker注册为service,在/lib/systemd/system目录下创建docker.service文件,并配置如下内容保存。
[Unit] Description=Docker Application Container Engine Documentation=http://docs.docker.com After=network.target docker.socket [Service] Type=notify EnvironmentFile=-/run/flannel/docker WorkingDirectory=/usr/local/bin ExecStart=/usr/bin/dockerd \ -H tcp://0.0.0.0:4243 \ -H unix:///var/run/docker.sock \ --selinux-enabled=false \ --log-opt max-size=1g 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=on-failure [Install] WantedBy=multi-user.target
添加文件权限并启动docker,执行如下命令:
chmod +x /lib/systemd/system/docker.service #添加文件权限
systemctl daemon-reload #重载unit配置文件
systemctl start docker # 启动Docker
systemctl enable docker # 设置开机自启
linux centOS离线安装docker
Docker 要求 CentOS 系统的内核版本高于 3.10
通过 uname -r 命令查看你当前的内核版本
/bin/bash^M: 坏的解释器: 没有那个文件或目录 的解决办法
- 问题:在linux下编写shell脚本,赋予权限即可运行。如果是在windows下编写,比如在idea编辑器中编写,编写完毕后传到服务器上执行,有时候会出现坏的解释器:
- 原因:由于windows系统下换行符为 \r\n,linux下换行符为 \n,所以导致在windows下编写的文件会比linux下多回车符号 \r
- 解决办法:
- 只需要去掉多余的 \r 回车符 即可。操作办法可以用sed命令进行全局替换,
sed 's/\r//' -i gen_cert.sh
2.也可以用 vim 来重新编辑脚本,使用vim首先查看文件格式:
:set ff
:set ff=unix #原来 应该未 ff=dox
将下载的,解压出来的docker文件内容移动到 /usr/bin/ 目录下
cp docker/* /usr/bin/
将docker注册为service,在/etc/systemd/system目录下创建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 ExecStart=/usr/bin/dockerd ExecReload=/bin/kill -s HUP $MAINPID LimitNOFILE=infinity LimitNPROC=infinity TimeoutStartSec=0 Delegate=yes KillMode=process Restart=on-failure StartLimitBurst=3 StartLimitInterval=60s [Install] WantedBy=multi-user.target
添加文件权限并启动docker,执行如下命令:
chmod +x /etc/systemd/system/docker.service #添加文件权限
systemctl daemon-reload #重载unit配置文件
systemctl start docker # 启动Docker
systemctl enable docker.service # 设置开机自启
执行安装程序,web程序访问不到 有可能是 防火墙问题
systemctl status firewalld.service # 查看防火墙状态
systemctl stop firewalld.service # 关闭防火墙
systemctl disable firewalld.service # 永久关闭防火墙
docker-compose 安装
离线下载
curl -L https://get.daocloud.io/docker/compose/releases/download/v2.4.1/docker-compose-(uname -m) > docker-compose
https://github.com/docker/compose/tags
安装和启动docker-compose
下载的文件移动到/usr/local/bin/ 下,赋予权限
cp -p ./docker-compose /usr/local/bin/
chmod +x /usr/local/bin/docker-compose
测试
使用docker-compose -v测试是否成功,如果不行 就是用 /usr/local/bin/docker-compose -v