Docker 安装
- apt update
-
- # 自动安装 1
- curl -fsSL https://get.docker.com -o get-docker.sh
- sh get-docker.sh --mirror Aliyun
-
- # 自动安装 2
- curl -sSL https://get.daocloud.io/docker | sh
-
- # 手动安装 - 成功率不高
- wget https://download.docker.com/linux/debian/dists/buster/pool/stable/arm64/docker-ce_19.03.8~3-0~debian-buster_arm64.deb
- sudo dpkg -i docker-ce*.deb
- sudo apt -f install
版本
docker info
自启 / 重启 / 关闭 / 状态
- systemctl start docker
- systemctl restart docker
- systemctl stop docker
- systemctl status docker
卸载
- mv /var/lib/dpkg/info/docker-ce* /tmp/
- dpkg --remove --force-remove-reinstreq docker-ce
- apt autoremove
- apt autoclean
- #rm -rf /var/lib/docker
加速镜像
- rm -fr /etc/docker/daemon.json
- tee /etc/docker/daemon.json <<-'EOF'
- {
- "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
- }
- EOF
当前镜像
- service docker restart
- docker info | grep "Registry Mirrors" -A 1
Docker Web
给 Docker 添加可视化界面
- # 忽略
- docker rm Portainer -f
- docker volume rm Portainer_data
-
- # 创建卷
- docker volume create Portainer_data
-
- # 运行
- docker run -d \
- --name=Portainer \
- --restart always \
- -e TZ=Asia/Shanghai \
- -p 10000:9000 \
- -v /var/run/docker.sock:/var/run/docker.sock \
- -v Portainer_data:/data \
- portainer/portainer:linux-arm64
-
- # 参数:
- -d:后台运行
- --name Portainer # 容器名称
- --restart always # 开机自启
- -e TZ=Asia/Shanghai # 设定时区
- -p 10000:9000 # 宿主机 10000 端口映射容器的 9000 端口
- -v /var/run/docker.sock:/var/run/docker.sock: # 把宿主机的 Docker 守护进程 (Docker daemon) 默认监听的 Unix 域套接字挂载到容器中。
- -v Portainer_data:/data: # 把宿主机 Portainer_data 数据卷挂载到容器 /data 目录
-
- # https://portainer.readthedocs.io/en/stable/deployment.html
Web 访问地址
IP:10000 -> Local
Portainer 中文(未测试)
- 1.新建文件夹命名为 public ,把 Portainer-CN.zip 解压至里面。
-
- 2.public 文件夹传输至系统根目录
-
- 3.按需执行以下命令
- x86-64 系统使用
- docker run -d -p 10000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v Portainer_data:/data -v /public:/public portainer/portainer:1.20.2
-
- arm64
- docker run -d -p 10000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v Portainer_data:/data -v /public:/public portainer/portainer:linux-arm64-1.20.2
-
- # 原作者:https://www.quchao.net/Portainer-CN.html
- # 步骤:https://www.right.com.cn/forum/thread-940311-1-1.html
Docker 扩容
挂载 U 盘
- fdisk -l # 查看磁盘情况
- mkfs.ext4 /dev/sda # u 盘是 sda,执行格式化 sda
- mkdir /mnt/USB # 创建目录供挂载使用
- mount -v /dev/sda /mnt/USB # 挂载 U 盘
- df -h # 查看挂载状态
- umount -v /dev/sda # 解除挂载
停止 Docker
service docker stop
方法 A [不推荐]:
- mkdir -p /etc/docker
-
- rm -fr /etc/docker/daemon.json
- tee /etc/docker/daemon.json <<-'EOF'
- {
- "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"],
- "graph": "/mnt/USB/docker", # 关键行
- "log-opts":{
- "max-size" :"10m","max-file":"3"
- }
- }
- EOF
方法 B [不推荐]:
- nano /etc/fstab
- /opt/docker /var/lib/docker none bind 0 0
方法 C:
- # 创建目录
- mkdir /mnt/USB/docker -p
-
- # 拷贝数据
- # -rpvb 递归/保留属性/覆盖/详细
- cp /var/lib/docker/* /mnt/USB/docker -rpvb
- mv /var/lib/docker /var/lib/docker.bak
-
- # 软连接:实际 + 目标
- ln -s /mnt/USB/docker /var/lib
-
- # 恢复步骤,删除软连接(警告!尾部没有左斜杠 /)
- #rm -rf /var/lib/docker
-
- # 生效/启动
- systemctl daemon-reload
- service docker restart
-
- # 验证
- docker info
- #docker info | grep 'docker Root Dir'
- -----------------
- 显示=成功
- Docker Root Dir: /mnt/USB/docker
-
- # 重启自动挂载 U 盘,在 rc.local
- sed -i '/exit 0/i\mount -v /dev/sda /mnt/USB' /etc/rc.local
Docker 玩法
30 多种玩法!
https://www.right.com.cn/forum/thread-911375-1-1.html