Docker常用命令

Docker常用命令

常用命令

网络

1
2
3
4
5
docker network create -d bridge my-bridge  # 创建 my-bridge 网络
docker network rm my-bridge # 删除 my-bridge 网络
docker network ls # 显示所有网络
docker inspect my-bridge # 查看 my-bridge 网络里面的容器
docker network connect my-bridge test2 # 手动将某个容器加入网桥

修改已有容器

1
2
docker commit containerid foo/live
docker run -d -p 8000:80 foo/live /bin/bash

docker启动

1
2
3
docker update --restart=always <CONTAINER ID>  # 启动docker自启动
docker start $(docker ps -aq) # 启动所有停止容器
docker exec -it <CONTAINER ID> bash # 进入容器

nginx

1
2
3
4
5
6
7
docker run --name nginx -p 80:80\
-v /home/nginx/nginx.conf:/etc/nginx/nginx.conf\
-v /home/nginx/log:/var/log/nginx\
-v /home/nginx/conf.d:/etc/nginx/conf.d\
-v /home/wwwroot/admin/client/dist:/usr/share/nginx/admin-client\
-v /home/wwwroot/admin/upload:/usr/share/nginx/admin-upload\
-d nginx

centos7

1
2
3
4
docker run -itd -v D:\Centos7:/home/project --name centos-test centos:centos7

yum install -y vim git make autoconf gcc # skynet 所需
yum install -y readline-devel

mysql

1
2
3
docker run -p 3306:3306 --name some-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:tag --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci  #tag:版本号

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; #老版本支持的加密方式
  1. Kill process com.docker.backend.exe
  2. Restart docker desktop

phpmyadmin

1
docker run --name myadmin -d -e PMA_HOST=some-mysql -p 8080:80 phpmyadmin/phpmyadmin

修改 libraries/config.default.php 增加 $cfg['Servers'][$i]['AllowRoot'] = false;

redis

1
docker run -itd --name some-redis -p 6379:6379 redis