努力挣扎的生活 努力挣扎的生活
  • 前端文章

    • JavaScript
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • 运维基础
  • 监控
  • 日志系统
  • 安全记录
  • 分布式存储
  • gitlab安装
  • jenkins安装和管理
  • Jenkins工具集成
  • pipeline流水线
  • Docker
  • Kubernetes
  • Nexus
  • Rancher
  • Prometheus
  • 日志服务ELK(EFK)
  • 虚拟化
  • istio
  • 日志服务Graylog
  • Mysql
  • PostgreSQL
  • Redis
  • MongoDB
  • clickhouse
  • openguassdb
  • polardb
关于
  • 分类
  • 标签
  • 归档
  • 收藏
  • 更多
GitHub (opens new window)

yangfk

瑟瑟发抖的小运维
  • 前端文章

    • JavaScript
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • 运维基础
  • 监控
  • 日志系统
  • 安全记录
  • 分布式存储
  • gitlab安装
  • jenkins安装和管理
  • Jenkins工具集成
  • pipeline流水线
  • Docker
  • Kubernetes
  • Nexus
  • Rancher
  • Prometheus
  • 日志服务ELK(EFK)
  • 虚拟化
  • istio
  • 日志服务Graylog
  • Mysql
  • PostgreSQL
  • Redis
  • MongoDB
  • clickhouse
  • openguassdb
  • polardb
关于
  • 分类
  • 标签
  • 归档
  • 收藏
  • 更多
GitHub (opens new window)
  • Docker

    • Docker安装与基础操作
    • Docker知识点
    • Dockerfile
    • docker-compose使用
    • 麒麟系统适配环境准备(x86_64运行arm容器)
    • docker单点启动nacos持久化密码
    • ctr和crictl命令
    • 二进制安装docker
      • 二进制安装docker
        • 下载docker安装二进制包
        • 配置systemd 配置文件
        • 启动docker-systemd
        • bridge网络模式,容器内无法上网
    • ubuntu镜像时区问题
  • Kubernetes

  • Nexus

  • Rancher

  • Prometheus

  • ELK

  • 虚拟化

  • Istio

  • Graylog

//
  • 云计算虚拟化
  • Docker
yangfk
2024-09-27

二进制安装docker

//

# 二进制安装docker

# 下载docker安装二进制包

  • 下载相应的架构版本

🤞下载docker安装二进制包 (opens new window)

cd /usr/local/src
wget -c https://download.docker.com/linux/static/stable/aarch64/docker-20.10.6.tgz  #arrch64 架构

tar xf docker-20.10.6.tgz
cd /usr/local/src/docker 
#cp -a dockerd docker containerd runc   containerd-shim-runc-v2   docker-init docker-proxy  /usr/bin/
test -f  /usr/bin/runc && mv  /usr/bin/runc  /usr/bin/runc-bak
cp -a ./* /usr/bin/

groupadd docker -g 1998
1
2
3
4
5
6
7
8
9
10

# 配置systemd 配置文件

  • docker.service
cat >/usr/lib/systemd/system/docker.service<<'EOF'
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
BindsTo=containerd.service
After=network-online.target firewalld.service containerd.service
Wants=network-online.target
Requires=docker.socket
[Service]
Type=notify
User=root
ExecStart=/usr/bin/dockerd
#ExecStart=/usr/bin/dockerd --iptables=false
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutSec=0
RestartSec=2
Restart=always
StartLimitBurst=3
StartLimitInterval=60s
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TasksMax=infinity
Delegate=yes
KillMode=process
[Install]
WantedBy=multi-user.target
EOF
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
  • docker.socket
cat >/usr/lib/systemd/system/docker.socket<<'EOF'
[Unit]
Description=Docker Socket for the API
PartOf=docker.service
[Socket]
ListenStream=/var/run/docker.sock
SocketMode=0660
SocketUser=root
SocketGroup=docker
[Install]
WantedBy=sockets.target
EOF
1
2
3
4
5
6
7
8
9
10
11
12
  • containerd.service
cat >/usr/lib/systemd/system/containerd.service<<'EOF'
[Unit]
Description=containerd container runtime
Documentation=https://containerd.io
After=network.target local-fs.target
[Service]
ExecStartPre=-/usr/sbin/modprobe overlay
ExecStart=/usr/bin/containerd
Type=notify
Delegate=yes
KillMode=process
Restart=always
RestartSec=5
LimitNPROC=infinity
LimitCORE=infinity
LimitNOFILE=1048576
TasksMax=infinity
OOMScoreAdjust=-999
[Install]
WantedBy=multi-user.target
EOF

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

# 启动docker-systemd


mkdir /etc/docker
cat >/etc/docker/daemon.json<<'EOF'
{
    "exec-opts": ["native.cgroupdriver=systemd"],
    "insecure-registries": ["192.168.40.55:5000"],
    "data-root": "/data/docker",
    "storage-driver": "overlay2",
    "registry-mirrors": ["https://docker.1ms.run"],
    "log-driver":"json-file",
    "log-opts": {"max-size":"1024m", "max-file":"3"},
    "live-restore": true
}
EOF

systemctl enable docker --now

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

# bridge网络模式,容器内无法上网

  • 如果你改过 daemon.json 自定义了网段,把 172.17.0.0/16 换成对应 CIDR。
iptables -t nat -A POSTROUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE

1
2
  • 永久保存
apt install iptables-persistent
netfilter-persistent save
1
2
//
如果此文章对您有帮助,点击 -->> 请博主喝咖啡 (opens new window)
上次更新: 2025/11/12, 16:05:18
ctr和crictl命令
ubuntu镜像时区问题

← ctr和crictl命令 ubuntu镜像时区问题→

最近更新
01
容器运行polardb-pg配置主从
11-27
02
Graylog服务收集k8s容器日志
11-13
03
Nexus3数据异常修复
11-13
更多文章>
Theme by Vdoing | Copyright © 2019-2025 yangfk | 湘ICP备2021014415号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×
//