1、docker 安装

#安装环境为centos
yum -y install docker service docker start #测试是否安装成功,可执行命令
docker run hello-world

2、采用Dockerfile创建镜像

  2.1 Dockerfile的基本命令

  •  FROM:第一条命令,表示基于哪个镜像
  •  RUN:需要执行的Linux指令
  •  CMD:运行容器时的默认参数
  •  ENTRYPOINT:指定容器的进入点
  •  EXPOSE:对外暴露的端口号
  •  ENV:指定环境变量的值
  •  ADD:从源系统的文件系统上复制文件到目标容器的文件系统,如果源文件是个归档文件(压缩文件),则docker会自动帮解压
  •  COPY: 同ADD,只是不会自己解压;

  2.2 Dockerfile例子

FROM ubuntu
MAINTAINER Fredric
ADD ./apache-tomcat-7.0..tar.gz /opt
ADD ./jdk-7u25-linux-x64.tar.gz /opt
ADD ./docker_demo.war /opt/apache-tomcat-/webapps
ENV JAVA_HOME /opt/jdk1..0_80
ENV PATH $JAVA_HOME/bin:$PATH
ENTRYPOINT /opt/apache-tomcat-7.0./bin/startup.sh && tail -F /opt/apache-tomcat-7.0./logs/catalina.out

  2.3 根据Dockerfile构建镜像

docker build -t web_app:1.0 ./docker/

备注:在docker目录下找文件名为Dockerfile的文件,并以此构建一个名字为web_app,TAG为1.0的镜像

  2.4 根据该镜像创建容器

#端口映射,将宿主机的80端口映射至docker的8080端口
docker run --name="web" --net="bridge" -p : -t -i web_app:1.0 /bin/bash

备注:--name表示容器的名称,--net表示网络设置类型,此时为桥接 -p为端口映射。以本文为例在192.168.1.12的虚拟机上安装该容器,完成映射后,访问192.168.1.12则会跳转至容器的8080端口tomcat应用。

3、其他常用命令

docker images #显示当前有效的镜像

docker pull ubuntu:14.10 #获取一个新的镜像

docker search httpd #查找镜像 从 Docker Hub 网站来搜索镜像,Docker Hub 网址为:https://hub.docker.com/

#修改镜像源
sudo echo “DOCKER_OPTS=\”\$DOCKER_OPTS –registry-mirror=http://demo_test_002.m.daocloud.io -d\”” >> /etc/default/docker
sudo service docker restart docker ps # 显示当前的docker进程 docker stop # 停止一个容器 此时用docker ps -a 仍然可以看到 docker start # 启动一个容器 docker rm # 删除一个容器 此时用docker ps -a 无法看到 docker cp /home/docker/test.txt tomcat-server:/opt/ #用容器ID和容器名字都可以
05-02 11:53