24
05月
2020
拉取镜像
docker pull nginx docker pull nginx:latest // 镜像名称:版本号 不写版本号默认最新版(latest)
启动容器
docker run -d -p 13306:3306 -v /etc/mysql:/var/mysql mysql docker run -d // -d 表示通过daemon方式来启动 -p 13306:3306 // 端口映射,将host主机的13306端口和docker容器的3306端口映射起来 -v /etc/mysql:/var/mysql // 目录挂载,将容器内的/var/mysql目录挂载到host主机的/etc/mysql目录,可以实现容器内这个目录下的数据持久化 mysql // 镜像名,指定加载哪个镜像
重启或停止或删除容器应用
docker ps // 列出目前正在运行的容器列表 docker ps -a // 列出所有的容器列表 docker start <容器id> // 通过容器id来重启某个容器 docker stop <容器id> // 通过容器id来关闭某个容器 docker rm <容器id> // 通过容器id来删除某个已经停止的容器 docker rm -f <容器id> // 通过容器id强制删除容器
查看容器日志
docker logs -f <容器id> docker inspect <容器id> // 从返回结果中找到Logpath, 运行的历史日志会在这个文件中找到
进入容器
docker exec -it <容器id> /bin/bash // 进入容器内并进入它的shell终端 docker exec -it <容器id> <shell命令> //在容器内执行shell命令 比如:docker exec -it <容器id> ls -l // 查看容器内系统根目录下所有文件或文件夹
删除本地镜像
docker rmi <镜像id> docker rmi -f <镜像id> // 强制删除
打包镜像
// 提前准备好一个Dockerfile,在Dockerfile相同路径下执行 docker build -t <指定一个完整的镜像名,比如testsvt:v1.0> // 即可打包出一个本地镜像,通过docker push推送到远端镜像仓库
推送镜像
// 推送镜像到docker hub,需要先注册账号 docker push <用户名>/<打包时定义的镜像名>:<标签,版本号> // 推送到私有镜像仓库,需要提前搭建好仓库服务(比如用harbor搭建) docker push <私有镜像库域名,如a.b.com>/<项目名称>/镜像名:<标签>