帮助命令:
docker version(docker的版本)
docker info (docker的信息)
docker --help (类似于linux的man ls)
镜像命令:
docker images 列出本地镜像
docker images -a(all) 列出本地所有镜像包括中间镜像层
docker images -q 列出镜像ID
docker images -qa
docker images --digests 显示摘要信息
搜索镜像:
docker search xxx(镜像名称) 查看docker hub中的镜像
docker search -s 30 tomcat 点赞数超过30的镜像
拉镜像:
docker pull tomcat(docker pull tomcat:latest) (从配置的阿里云或网易云拉镜像到本地)
docker pull tomcat:TAG
删除:
docker rmi tomcat(docker rmi tomcat:latest) 删除本地镜像
docker rmi -f hello-world nginx tomcat 删除多个(-f强制删除)
docker rmi -f $(docker images -qa) 删除全部
容器命令:
查看正在运行的容器
docker ps
docker ps -a (正在运行和曾经运行的容器)
docker ps -q (正在运行的容器ID)
docker ps -l (上一次运行的容器)
docker ps -n 5 (上五次运行的容器)
docker ps -lq (上一次运行的容器ID)
创建启动容器
docker run -it 镜像ID -it(启动交互式容器,i:以交互模式运行容器,t:为容器重新分配一个伪终端)
docker run -it --name mycentos 镜像ID (重命名容器新名字为mycentos)
退出容器
exit(停止容器并退出)
ctrl+P+Q(退出容器但是不停止)
启动重启停止-容器
docker start/restart/stop 容器ID
强制关闭容器
docker kill 容器ID(断电)
删除已停止的容器
docker rm 容器ID
删除多个容器
docker rm -f $(docker ps -a -q)
docker ps -a -q | xargs docker rm
守护式容器启动(只启动,不用进入命令行伪终端)
docker run -d 容器名(docker的机制,没有应用,后台会自动停止,所以直接以-it的前台启动)
docker run -d centos /bin/sh -c "while true;do echo hello zzyy;sleep 2;done"
docker run -d tomcat
docker run -it -p 8888(docker的对外暴露的端口):8080(tomcat的访问端口) tomcat (浏览器以http://localhost:8888访问)
docker run -it -P tomcat (随机分配) -p指定端口,-P 随机 分配端口,通过docker ps 的PORTs属性查看端口
docker run -d -p 8080:8080 tomcat 后台启动tomcat
查看日志
docker logs -t(时间) -f(持续追加) --tail 3(后三行) 容器ID
docker ps 正在运行的容器
docker stop cid 停止正在运行的容器
容器内运行的进程
docker top 容器ID
查看容器内部细节
docker inspect 容器ID
重新进入容器
docker attach 容器ID(日志监控)
docker exec -it 容器ID(进入当前正在运行的容器)
docker exec -it 容器ID ls -l /tmp (执行容器的ls命令,不进入终端)
容器内拷贝文件到主机
docker cp 容器ID:/tmp/yum.log /opt
docker安装mysql
docker run -p 12345:3306 --name mysql
-v /zluse/mysql/conf:/etc/mysql/conf.d
-v /zluse/mysql/logs:/logs
-v /zluse/mysql/data:/var/lib/mysql
-e MYSQL_ROOT_PASSWORD=123456
-d mysql:5.6
docker安装redis
docker run -p 6379:6379
-d redis:3.3 redis-server /usr/local/etc/redis/redis.conf --applyonly yes
推送镜像到阿里云
docker commit -a zhoulei -m "sss" 容器ID xxx:1.2 (把修改的容器生产新的镜像)
docker login --username=registry.cn-hangzhou.aliyun.com (要去网站注册)
docker tag 镜像ID registry.cn-hangzhou.aliyun.com/zzyybuy/mycentos:1.2
docker push registry.cn-hangzhou.aliyun.com/zzyybuy/mycentos:1.2 推送
docker pull registry.cn-hangzhou.aliyun.com/zzyybuy/mycentos:1.2 拉取