Docker常用命令
常用
- systemctl start docker 开启docker服务
- docker ps 查看当前正在运行的容器
- docker ps -a 查看所有容器的状态
- docker start/stop id/name 启动/停止某个容器
- docker attach id 进入某个容器(使用exit退出后容器也跟着停止运行)
- docker exec -ti id /bin/bash 启动一个伪终端以交互式的方式进入某个容器,使用exit退出后容器不停止运行(如报错the input device is not a TTY则改为:winpty docker exec -it id)
- docker images 查看本地镜像
- docker rm id/name 删除某个容器
- docker rmi id/name 删除某个镜像
- docker logs nginx 查看日志,如容器启动失败查看原因
- docker inspect names 查看容器信息,如-v等
- docker inspect --format=‘{{.NetworkSettings.IPAddress}}’ php-fpm7.3 获得容器ip信息
- docker build -t soar/centos:7.1 . 通过当前目录下的Dockerfile创建一个名为soar/centos:7.1的镜像
- docker run -d -p 2222:22 --name test soar/centos:7.1 以镜像soar/centos:7.1创建名为test的容器,并以后台模式运行,并做端口映射到宿主机2222端口(左侧2222本地,右侧22容器),P参数重启容器宿主机端口会发生改变,-d就是后台运行(如宿主机是win,则格式:D://project/hyperf:/www/hyperf)
- docker commit -m “php-fpm add extension mysqli” php-fpm php-fpm:7.2 将容器另存为一份到镜像,-m描述,php-fpm是容器名,php-fpm:7.2(镜像名+版本号)
- docker cp /home/nginx.conf nginx:/etc/nginx 复制文件到容器内
迁移
- docker commit redis redis:5.0_my 将容器导出成镜像
- docker save -o redis_5.0_food.tar redis:5.0_my 镜像打包成压缩包
- docker load < redis_5.0_food.tar 将压缩包还原成镜像