docker常用命令以及tomcat容器部署说明

image 文件

# 列出本机的所有 image 文件。
$ docker image ls

# 删除 image 文件
$ docker image rm [imageName]

 

根据Dockerfile创建镜像

新建Dockerfile文件如下

FROM tomcat:8.0-jre8
#该image 文件继承官方的 tomcat image,冒号表示标签,这里标签是8.0-jre8,即tomcat为8.0,jre为8的版本 MAINTAINER
"kangjianrong<897666996@qq.com>" #定义工作目录 ENV WORK_PATH /usr/local/tomcat/conf
#解决java获取时区问题,java是通过获取timezone来设置时间 ENV TZ="Asia/Shanghai" ADD server.xml
/usr/local/tomcat/conf/
#解决宿主机时区和容器时区同步的问题
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
#创建image文件
docker image build -t koa-demo .

上面代码中,-t参数用来指定 image 文件的名字,后面还可以用冒号指定标签。如果不指定,默认的标签就是latest。最后的那个点表示 Dockerfile 文件所在的路径,上例是

当前路径,所以是一个点。

 

容器文件

# 列出本机正在运行的容器
$ docker container ls

# 列出本机所有容器,包括终止运行的容器
$ docker container ls --all
# 删除指定的容器文件
$ docker container rm [containerID]

 

创建容器

#生成容器
docker run -d --name mingwork-box --rm --volume /alidata/server/docker/logs:/usr/local/tomcat/webapps/logs 
-v /alidata/server/docker/sourceCode/mingworkBox/target/mingworkBox.war:/usr/local/tomcat/webapps/mingworkBox.war 
-p 8001:8001 mingwork-box/tomcat
  • -d:容器启动后,在后台运行。
  • --rm:容器终止运行后,自动删除容器文件。
  • --name wordpressdb:容器的名字叫做wordpressdb。
  • -v : 将容器的文件映射到当前宿主机的文件。
  • --volume:将容器的文件映射到当前宿主机的文件

 

查看日志

$ docker container logs mingwork-box

 

其他常用命令

docker 的主要用法就是上面这些,此外还有几个命令,也非常有用。

1、docker container start

$ docker container start [containerID]

前面的docker container run命令是新建容器,每运行一次,就会新建一个容器。同样的命令运行两次,就会生成两个一模一样的容器文件。如果希望重复使用容器,就要使用

docker container start命令,它用来启动已经生成、已经停止运行的容器文件。

(2)docker container stop

$ bash container stop [containerID]

前面的docker container kill命令终止容器运行,相当于向容器里面的主进程发出 SIGKILL 信号。而docker container stop命令也是用来终止容器运行,相当于向容器里面的主

进程发出 SIGTERM 信号,然后过一段时间再发出 SIGKILL 信号。

(3)docker container logs

$ docker container logs [containerID]

docker container logs命令用来查看 docker 容器的输出,即容器里面 Shell 的标准输出。如果docker run命令运行容器的时候,没有使用-it参数,就要用这个命令查看输出。

(4)docker container exec

$ docker container exec -it [containerID] /bin/bash

docker container exec命令用于进入一个正在运行的 docker 容器。如果docker run命令运行容器的时候,没有使用-it参数,就要用这个命令进入容器。一旦进入了容器,就可

以在容器的 Shell 执行命令了。

(5)docker container cp

$ docker container cp [containID]:[/path/to/file] .

docker container cp命令用于从正在运行的 Docker 容器里面,将文件拷贝到本机。下面是拷贝到当前目录的写法。

 

Dockerfile Commands Overview

  • ADD: Copy a file from the host into the container
  • CMD: Set default commands to be executed, or passed to the ENTRYPOINT
  • ENTRYPOINT: Set the default entrypoint application inside the container
  • ENV: Set environment variable (e.g. key = value)
  • EXPOSE: Expose a port to outside
  • FROM: Set the base image to use
  • MAINTAINER: Set the author / owner data of the Dockerfile
  • RUN: Run a command and commit the ending result (container) image
  • USER: Set the user to run the containers from the image
  • VOLUME: Mount a directory from the host to the container
  • WORKDIR: Set the directory for the directives of CMD to be executed

参考:

http://www.ruanyifeng.com/blog/2018/02/docker-tutorial.html

posted @ 2018-08-06 20:43  kangjianrong  阅读(447)  评论(0编辑  收藏  举报