document/文档/docker/docker.md
2024-11-17 00:35:38 +08:00

3.5 KiB
Raw Blame History

Docker

常用命令

# 重启服务
sudo systemctl restart docker
# 设置代理
sudo nano /etc/docker/daemon.json
{
    # 允许http请求拉取镜像
   "insecure-registries" : ["123.207.203.228:92","123.207.203.228:93"],
    "registry-mirrors": [
        # 拉取镜像代理地址
        "https://mirror.ccs.tencentyun.com"
    ]
}

# 改完后需要重启
sudo systemctl restart docker
# 查看挂载卷
docker volume ls
# 查看挂载卷详细 miaoyu_miaoyu-log 卷名称
docker volume inspect miaoyu_miaoyu-log

#删除所有带miaoyuapi
docker  rmi -f  `docker images | grep miaoyuapi | awk '{print $3}'` 

# 部署服务
docker stack deploy -c docker-compose.yml my_stack
# 查看服务状态:
docker stack services my_stack

# 加入节点
docker swarm join --token SWMTKN-1-1j8ye9wwvth761odcv9awydwg9zmz51cxdfidw3osdxw4zoraq-1c6ltkq51n1nawvciyudqijc7 10.0.12.5:2377

#列出所有节点的 ID
docker node ls
docker stack ps miaoyu_webapi
# 查看详细信息:
docker node inspect <node-id> --format '{{ .Status.Addrs }}'

# 节点添加标签
docker node update --label-add key=value <node-id>

# 提升新的管理节点:
docker node update --role manager <new-node-id>
# 降级故障节点
docker node update --role worker <old-node-id>
# 移除旧的管理节点
docker node rm <old-node-id>











# 导出镜像
docker save -o miaoyu.tar miaoyu:dev-1.2.5
docker save -o I:/docker/ubuntu/ubuntu.22.04.tar ubuntu:22.04

docker save -o I:/docker/ubuntu/cg-admin.tar cloudgaming.api.admin:dev-0.0.1


docker load -i <镜像文件名>.tar
docker save -o /disk/Public/miaoyu/Public/docker/miaoyu.tar miaoyu:dev-1.2.5
# 修改镜像标签,先修改在推送到服务器
docker tag miaoyuapi:dev-1.2.6 123.207.203.228:92/miaoyuapi:dev-1.2.6
# 推送镜像到服务器
docker tag miaoyuapi:dev-1.2.6 123.207.203.228:92/miaoyuapi:dev-1.2.6

## 打包镜像
docker build -t miaoyuapi:dev-1.2.6 -progress=plain --build-arg VERSION=1.2.6  --build-arg TARGET=dev -f src/2-api/HuanMeng.MiaoYu.WebApi/Dockerfile .

docker build -t cg-admin:dev-0.0.2 -f CloudGaming.Api.Admin/Dockerfile .

docker build -t cg-admin:dev-0.0.2 -f CloudGaming.Api.Admin/Dockerfile .
docker save -o I:/docker/ubuntu/cg-admin-0.02.tar cg-admin:dev-0.0.2
# 运行
docker run -d -p 90:90 -v miaoyu-log:/app/output --name webapi miaoyu:dev-0.0.3  



安装

# 更新系统包列表:
sudo apt update
# 安装依赖包:
sudo apt install apt-transport-https ca-certificates curl software-properties-common
# 添加 Docker 的官方 GPG 密钥:
## 国内
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# 添加 Docker 软件源
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

sudo apt-get install docker-ce docker-ce-cli containerd.io



# 海外 
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

##如果没有办法安装可以先下载gpg然后执行命令


# 添加 Docker APT 仓库:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 更新包列表:
sudo apt update
# 安装 Docker CE社区版
sudo apt install docker-ce
# 启动 Docker 并设置为开机启动:
sudo systemctl start docker
sudo systemctl enable docker
# 验证 Docker 是否安装成功:
sudo docker run hello-world