Docker工作中常用命令
前言
工作刚开始用docker的时候,因为命令部署每次去查浪费时间,所以在此记录自己工作中常用的命令和一些注意事项,持续更新。
列出容器
①展示出所有正在运行的容器
docker ps
②展示出所有容器
docker ps -a
进入指定容器
docker exec -it 容器id /bin/bash
启动指定容器
这里注意docker run命令好像不管用
docker restart b2a260c5111c
查看指定容器日志
docker logs -f b2a260c5111c
停止、删除一个容器
docker stop 容器名
docker rm 容器名
列出所有镜像
docker images
导出某个镜像
docker save -o /tmp/nwd/dasjre.tar das/jre:latest
解释:docker save -o /XX/XX/文件名.tar REPOSITORY:版本号
这里注意下,以镜像名的形式导出,导出导入后自带镜像名;以镜像id导入导出,名称和tag都是none可以重命名,,不然,-o是以文件形式
导入某个镜像
docker load -i .\home\docker\images\dasc.tar
查看所有的network
docker network ls
创建容器
容器的创建是基于镜像的
docker run XXX
给路径加权限
有时候跑不起来就是这个引起了,错误日志里会说
chmod +x /home/das/scada/startup.sh
查询项目运行日志
docker logs -f --tail 10 scada
注:-f是持续滚动(有日志接着出来),tail前面两个横杠,10最近10条,scada是项目名
查询某个端口的占用情况并解除占用
lsof -i:8080
kill -9 PID
使用docker-compose启动
docker-compose up -d
单独启动一个:docker-compose up -d XXX
重启:docker restart 容器id
启动FTP容器
首先要安装ftp镜像:fauria/vsftpd
执行run命令:docker run -d -p 20:20 -p 21:21 -p 30000-30209:30000-30209 -v /Ftpfile:/home/docker/ftp/data -e FTP_USER=admin -e FTP_PASS=admin123 -e PASV_ADDRESS=172.XX.XX.129 -e PASV_MIN_PORT=30000 -e PASV_MAX_PORT=30209 --name vsftpdnwd --restart=always fauria/vsftpd
介绍:
-p是端口,21和20的是主动模式后面是被动模式,默认按21
-d指定容器运行于前台还是后台,默认为false
-v容器挂载存储卷(暴露给外部的存储卷):挂载到容器的某个目录(内部真实目录),其实就是docker-compose的volumes,宿主机存在目录:容器内目录
-e是environment,指定环境变量,容器中可以使用该环境变量FTP_USER是访问用户名,FTP_PASS是密码
PASV_ADDRESS是宿主机ip
name是容器名
restart指定容器停止后的重启策略:no:容器退出时不重启 on-failure:容器故障退出(返回值非零)时重启 always:容器退出时总是重启
fauria/vsftpd是容器运行依靠的镜像