Skip to content
本页内容

docker 常用命令



1、主进程管理

shell
systemctl [start|stop|restart] docker

2、拉取镜像/删除镜像

shell
docker pull mysql:8.0.36
docker rmi [镜像id]

3、本地已有镜像目录

shell
docker images
#或者
docker image list

4、初次运行镜像的常用可选命令

shell
docker run
    -p [主机端口]:[内部端口]/[tcp/udp协议]    # 端口绑定,后面的协议可不填
    -it [镜像标签] /bin/bash    # 用于启动一个交互式的shell,使你能够直接在容器内执行命令并查看输出
    -v [主机路径]:[内部路径]    # 将主机一个路径映射到容器的一个路径
    -d [镜像标签] # 在后台运行容器
    -e # 设置环境变量
    --name [容器别名]
    --restart=always # 无论是正常退出还是异常退出,Docker 都会重启该容器

# 例1:部署一个nginx, 并进入其shell
docker run -p 80:80 -it nginx /bin/bash
# 例2:部署指定版本数据库
docker run --name mysql-8.0.36 -v mysql-8.0.36:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.36
# 例3:部署laravel接口
docker run --name 容器名 -v /home/wwwroot/项目名:/home/wwwroot/项目名 -e WORKDIR=/home/wwwroot/项目名/public/api -d zhaoxlchn/php8.1-fpm
# 例4:部署laravel任务
docker run --name 容器名 -v /home/wwwroot/项目名:/home/wwwroot/项目名 -d zhaoxlchn/php8.1-fpm php /home/wwwroot/项目名/artisan queue:work

5、运行已经停止的容器/停止运行中得容器

shell
docker start [容器id]
docker stop [容器id]
docker restart [容器id]

6、删除容器(运行中的需要先停止)

shell
docker rm -v [容器id]
    -v #删除与容器关联的卷
    -f #通过 SIGKILL 信号强制删除一个运行中的容器。
    -l #移除容器间的网络连接,而非容器本身。

6、全部容器列表

shell
docker ps -a
#或者
docker container ls --all

7、进入一个容器的命令行

shell
docker exec -it [容器id] /bin/bash
# 想使用root账号登录时追加参数: -u 0

8、Volume使用

txt
1、创建一个volume
    例如:docker volume create www
2、在创建容器时通过 -v 参数将volume挂载到容器中
    例如:docker run -v www:/var/www -it centos /bin/bash

9、修改docker代理

1、创建文件 /etc/systemd/system/docker.service.d/http-proxy.conf

2、输入内容

text
[Service]
Environment="HTTP_PROXY=http://127.0.0.1:7890"
Environment="HTTPS_PROXY=http://127.0.0.1:7890"

3、重启docker

shell
systemctl daemon-reload
systemctl restart docker

更新日期: