首页 > 系统相关 >shell 脚本安装docker服务

shell 脚本安装docker服务

时间:2022-10-14 11:01:46浏览次数:46  
标签:脚本 systemd shell system etc serviceecho docker data

本次安装:

docker-20.10.9.tgz

安装包下载地址:https://download.docker.com/linux/static/stable/x86_64/docker-20.10.9.tgz

 

1、创建文件夹

mkdir -p /data/docker/data

2、上传安装文件到/data/docker下

 

 

3、编辑安装脚本

vi /data/docker/install_docker-service.sh

#!/bin/bash
#上传安装包到/data/docker目录下
cd /data/docker
#解压安装包到/usr/local目录下
tar -zxvf docker-20.10.9.tgz -C /usr/local

#先删除再插入新的配置文件

rm -rf /etc/systemd/system/docker.service

#编辑配置文件
#/etc/systemd/system/docker.service

echo "[Unit]" >> /etc/systemd/system/docker.service
echo "Description=Docker Application Container Engine" >> /etc/systemd/system/docker.service
echo "Documentation=https://docs.docker.com" >> /etc/systemd/system/docker.service
echo "After=network-online.target firewalld.service" >> /etc/systemd/system/docker.service
echo "Wants=network-online.target" >> /etc/systemd/system/docker.service
echo "[Service]" >> /etc/systemd/system/docker.service
echo "Type=notify" >> /etc/systemd/system/docker.service
echo "Environment=PATH=/usr/local/docker:/usr/bin:/usr/sbin" >> /etc/systemd/system/docker.service
echo "ExecStart=/usr/local/docker/dockerd" >> /etc/systemd/system/docker.service
echo "ExecReload=/bin/kill -s HUP $MAINPID" >> /etc/systemd/system/docker.service
echo "LimitNOFILE=infinity" >> /etc/systemd/system/docker.service
echo "LimitNPROC=infinity" >> /etc/systemd/system/docker.service
echo "LimitCORE=infinity" >> /etc/systemd/system/docker.service
echo "TimeoutStartSec=0" >> /etc/systemd/system/docker.service
echo "Delegate=yes" >> /etc/systemd/system/docker.service
echo "KillMode=process" >> /etc/systemd/system/docker.service
echo "Restart=on-failure" >> /etc/systemd/system/docker.service
echo "StartLimitBurst=3" >> /etc/systemd/system/docker.service
echo "StartLimitInterval=60s" >> /etc/systemd/system/docker.service
echo "[Install]" >> /etc/systemd/system/docker.service
echo "WantedBy=multi-user.target" >> /etc/systemd/system/docker.service
#修改环境变量
#echo “export PATH=$PATH:/usr/local/docker” >> /etc/profile
sed -i '$aexport PATH=$PATH:/usr/local/docker' /etc/profile
source /etc/profile
#赋给docker.service文件添加执行权限
chmod 755 /etc/systemd/system/docker.service
#修改/usr/local/docker的所属者
chown -R root:root /usr/local/docker
#重新加载配置文件
systemctl daemon-reload

#休眠3秒,否者启动失败,因为systemctl daemon-reload命令没有执行完成,马上执行启动服务会报错
sleep 3
#启动服务
systemctl start docker

#先删除再插入新的配置文件

rm -rf /etc/docker/daemon.json

#修改docker文件存放路径
touch /etc/docker/daemon.json
echo '{"data-root": "/data/docker/data"}' >> /etc/docker/daemon.json
#重新加载配置文件
systemctl daemon-reload

#休眠3秒,否者启动失败,因为systemctl daemon-reload命令没有执行完成,马上执行启动服务会报错
sleep 3
#重新启动服务
systemctl restart docker

4、修改 /data/docker/install_docker-service.sh的执行权限

chmod +x  /data/docker/install_docker-service.sh

5、验证

source  /data/docker/install_docker-service.sh

 

安装成功!!!

标签:脚本,systemd,shell,system,etc,serviceecho,docker,data
From: https://www.cnblogs.com/leihongnu/p/16790906.html

相关文章

  • docker desktop url protocl 技术以及使用
    dockerdesktop在登录的使用使用了自定义的url协议,同时基于web进行系统登录,认证完成之后会生成code,之后通过url协议进入使用docker协议定义 <arra......
  • 利用powershell批量升级DELL的idrac
    利用powershell批量升级DELL的idrac拓扑环境及工具环境:windows系统工具:racadm软件,下载地址链接racadm手册(pg97)链接我们这里用的是powershell语言,因为idrac管理机是......
  • shell脚本介绍&shell脚本结构和执行&date命令用法&shell脚本中的变量
    20.1shell脚本介绍•shell是一种脚本语言 aming_linux blog.lishiming.net•可以使用逻辑判断、循环等语法•可以自定义函数•shell是系统命令的集合•shell脚本......
  • How to run Selenium Tests in Docker
    https://www.browserstack.com/guide/run-selenium-tests-in-docker Thistutorialusesthe selenium/standalone-chrome imagehostedbyseleniumonDockerHub.S......
  • Docker | 使用dockerfile生成镜像,清理docker空间
    用dockerfile生成镜像并挂载数据卷编写dockerfile文件创建dockerfile01文件#基础镜像FROMcentosVOLUME["volume01","volume02"]CMDecho"-----end----"......
  • 通过dockerfile发布微服务Springboot部署到docker容器
    通过IDEA创建一个demo项目新建一个测试接口,并打包成demo.jar,端口为1013通过jar包启动,访问测试接口:http://localhost:1013/hello查看jar包测试结果:{"msg":"测试接口成......
  • docker容器整理笔记
    2022-10-091、docker学习1)性能更高,没有模拟层那个环节2)创建速度快只需要几秒钟,虚拟机创建至少好几分钟3)只能基于系统之上创建相同的容器系统2、很多软件安装在同一个系统......
  • Docker学习
    Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源。Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行......
  • python ssh 交互式命令行脚本
    importparamikoimportjsonimporttimeimportsysimportosfromparamiko.ssh_exceptionimportNoValidConnectionsErrorfromparamiko.ssh_exceptionimportAut......
  • 常用脚本(python)
    目录:    第一部分:布尔盲注类型:importrequestsurl="http://32a87616-b3a4-4290-808b-9c3d3e1163d2.node4.buuoj.cn:81/index.php"forchangduinrange(1,......