Docker使用总结
Docker命令
-
Docker比较重要的命令 定义:
docker run
Run a command in a new container
参数有很多,根据不同的需要
-
运行一个shell
docker run -it -v /root/downloads:/opt/data tomcat /bin/bash -
后台运行的容器
docker run -d -p 204:22 -p 7003:8080 -v /root/downloads:/opt/data –name node1 tomcat /usr/bin/supervisord
指定映射的port后,docker会自动生成防火墙的nat规则
如果没有指定name,docker每次运行都会产生一个新的容器,久而久之,缓存的容器会很多,通过指定name,可以约束只产生一个容器,记得退出后,要 * docker rm name * 删除之。
docker commit
-
对一个容器进行改动后,通过该命令生成一个新镜像或者直接更新原镜像,相对于Dockerfile方式,这种方式比较直接。
docker commit 8f242 tomcat
docker build
-
通过Dockerfile编译生成image
docker build -t tomcat tomcat
docker logs
-
查看容器的运行日志
docker logs node1
docker import
-
通过tar包来生成镜像
cat ubuntu-14.04-x86_64-minimal.tar.gz | docker import - ubuntu:base
docker rm
- 删除容器 docker rmi
- 删除镜像
Dockerfile
代码块语法遵循标准markdown代码,例如:
FROM tomcat
ENV JAVA_HOME=/opt/data/jdk1.8.0_121 \
JAVA_BIN=/opt/data/jdk1.8.0_121/bin \
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar \
PATH=$PATH:$JAVA_BIN
EXPOSE 22 8080
CMD ["/usr/bin/supervisord"]