首页 > 其他分享 >docker离线一键安装脚本

docker离线一键安装脚本

时间:2023-11-28 17:58:34浏览次数:54  
标签:sysctl 离线 一键 ipv4 https forward docker com

下载安装文件

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

https://github.com/docker/compose/releases

本例安装文件下载地址

https://download.docker.com/linux/static/stable/x86_64/docker-23.0.6.tgz

https://github.com/docker/compose/releases/download/v2.23.0/docker-compose-linux-x86_64

安装脚本

参数1为docker数据目录,示例:

sh docker-install.sh /opt/docker

docker-install.sh脚本内容:

#!/bin/bash

if [ ! -d $1 ]; then
    mkdir -p $1
	if [ $? -ne 0 ]; then
		echo "$1 目录创建失败,请检查"
		exit
	fi
fi 

ln -s $1 /var/lib/docker

ipv4_forward=$(sysctl -a |grep "net.ipv4.ip_forward =" |cut -d= -f2)
if [ $ipv4_forward -ne 1 ]; then
	sed -i '/^net.ipv4.ip_forward\s*=/d' /etc/sysctl.conf
	echo net.ipv4.ip_forward=1 >> /etc/sysctl.conf
	sysctl -p
fi

#setup
tar -zxf docker-23.0.6.tgz && mv docker/* /usr/bin/ && rm -rf docker/

#systemd config
cat >/etc/systemd/system/docker.service << EOF
[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 -H unix://var/run/docker.sock
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
EOF

#start
chmod +x /etc/systemd/system/docker.service
systemctl daemon-reload && systemctl start docker && systemctl enable docker.service

#testing
systemctl status docker && docker -v

# 安装docker-compose
cp docker-compose-linux-x86_64 /usr/bin/docker-compose

chmod +x /usr/bin/docker-compose

docker-compose -v

标签:sysctl,离线,一键,ipv4,https,forward,docker,com
From: https://www.cnblogs.com/cheap-cabbage/p/17862549.html

相关文章

  • 四、Docker 镜像
    1.什么是镜像UnionFS(联合文件系统):Union文件系统(UnionFS)是一种分层、轻量级并且高性能的文件系统,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(uniteseveraldirectoriesintoasinglevirtualfilesystem)。Union文件系统......
  • docker-compose种不通的服务之间的访问问题,夸容器访问
    背景我们知道对于docker的每个容器都是独立的,想要夸容器访问的话,不能用127.0.0.1加端口号去访问,所以需要docker虚拟网卡的网关分配的地址去访问,可以通过dockerinspect对每个容器的局域网ip进行查看,但是这样比较麻烦,所以有一个新的解决办法,就是通过docker-compose配置文件的方......
  • arthas 热更新docker容器中的代码
    1、将修改并编译好的class文件复制到docker容器中dockercpBasicController.classarthas-demo:/将文件BaseiController.class复制到arthas-demo容器根目录下BaseiController.class:编译后的代码arthas-demo:容器名 2、进入容器,运行arthas参见:地址 3、替换文件ret......
  • 三、Docker 常用命令
    1.帮助命令docker--versiondockerinfodocker--help防火墙相关帮助启动:systemctlstartfirewalld.service关闭:systemctlstopfirewalld.service查看状态:firewall-cmd--state开机禁用:systemctldisablefirewalld.service开机启用:systemctlenabl......
  • CentOS7安装Docker
    1、前言安装参考文档:https://docs.docker.com/engine/install/centos/阿里镜像地址:https://www.aliyun.com/product/acr安装命令:基于root账户进行安装,非root命令采用sudo2、安装docker2.1、删除原有的dockeryumremovedocker\docker-client\docker......
  • DockerCompose修改某个服务的配置(添加或编辑端口号映射后如何重启单个服务使其生效)
    场景docker-compose入门以及部署SpringBoot+Vue+Redis+Mysql(前后端分离项目)以若依前后端分离版为例:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/128372122上面讲了dockercompose的应用示例,如果需要修改某个服务的配置文件,比如需要给其中一个java服务添加一......
  • Docker的CI/CD流水线简单配置(在windous本地配置)
    在做配置之前,请先了解一下知识点,更加方便了解下面代码:1.文件后缀名为.yml2.gitlab-runner3.CI/CD了解完之后就开始本次代码讲解(一定要先进行了解)首先先要做一些准备工作,方便下面步骤的使用1.运行docker里的gitlab2.找到你想应用的项目仓库里去设置弄一个访问令牌 添加一......
  • [信创]--达梦DM8数据库-docker方式部署
    下载:https://www.dameng.com/list_103.html下载镜像,上传到指定服务器:载入镜像:查看镜像: 启动容器:dockerrun-d-p5237:5236--restart=always--namedm8--privileged=true-eCASE_SENSITIVE=0\-ePAGE_SIZE=32-eEXTENT_SIZE=32-eUNICODE_FLAG=1-eLENGTH_IN......
  • 【Docker常用命令】docker 或 docker help
    1、用途:docker或dockerhelp命令用于要列出docker可用的命令。docker【命令】 --help命令用于查看具体本命令的使用帮助。2、格式docker或dockerhelp或docker--help或docker-h3、执行结果C:\Windows\System32>dockerUsage:docker[OPTIONS]COMMANDAself-suffi......
  • 二、Docker 安装
    1.环境提前说明1.1CentOSDocker安装Docker支持以下的CentOS版本:CentOS7(64-bit)CentOS6.5(64-bit)或更高的版本1.2前提条件目前,CentOS仅发行版本中的内核支持Docker。Docker运行在CentOS7上,要求系统为64位、系统内核版本为3.10以上。Docker运行在CentOS......