我的学习系列 - docker-compose 的安装使用

学习docker以后发现构建镜像好轻松,直接去仓库拉取一下就能够了。但是仍是有不足,就是若是想要本身搭建项目的话,仓库里面可没有供咱们使用的现成的镜像,因此咱们就须要本身构建镜像了。docker-compose就这样被安排上了。

docker-compose

docker-compose安装

contos安装

安装方式

能够查看最新版本的安装方式:https://github.com/docker/com...
具体步骤以下:java

1.sudo curl -L https://github.com/docker/compose/releases/download/1.18.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
2.sudo chmod +x /usr/local/bin/docker-compose 给docker-compose执行权限
3.docker-compose --version 测试安装是否成功,成功的话打印从出docker-compose的版本信息

卸载方式

sudo rm /usr/local/bin/docker-compose

docker-compose使用

Dockerfile指令

1. FROM

格式:FROM <image>或 FROM <image>:<tag>
第一条指令必须为FROM指令,而且,若是在同一个Dockerfile中建立多个镜像时,可使用多个FROM指令(每一个镜像一次)git

2. MAINTAINET

格式:MAINTAINET <name>
指定维护者的信息github

3. WORKDIR

格式:WORKDIR /path/to/workdir
为后续的 RUN 、 CMD 、 ENTRYPOINT 指令配置工做目录。(可使用多个 WORKDIR 指令,后续命令若是参数是相对路径, 则会基于以前命令指定的路径)web

4. ADD

格式:ADD  <src>  <dest>
复制指定的<src>到容器的<dest>中,<src>能够是Dockerfile所在的目录的一个相对路径;能够是URL,也能够是tar.gz(自动解压)spring

5. COPY

格式:COPY <src>  <dest>
复制本地主机的 <src> ( 为 Dockerfile 所在目录的相对路径)到容器中的 <dest> (当使用本地目录为源目录时,推荐使用 COPY)docker

6. EXPOSE

格式:EXPOSE <port>  [ <port> ...]
告诉Docker服务端暴露端口,在容器启动时须要经过 -p 作端口映射数据库

7. VOLUME(通常会在docker-compose.yml里面添加该属性)

格式:VOLUME ["/mnt"] 
建立一个能够从本地主机或其余容器挂载的挂载点,通常用来存放数据库和须要保持的数据等springboot

8. ENTRYPOINT

格式:ENTRYPOINT ["","",""]
配置容器启动后执行的命令,而且不可被 docker run 提供的参数覆盖。(每一个 Dockerfile 中只能有一个 ENTRYPOINT ,当指定多个时,只有最后一个起效)oracle

9. RUN

格式:RUN <command> 或 RUN ["", "", ""]
每条指令将在当前镜像基础上执行,并提交为新的镜像。(能够用“”换行)app

10. ENTRYPOINT

格式:ENTRYPOINT ["","",""]
配置容器启动后执行的命令,而且不可被 docker run 提供的参数覆盖。(每一个 Dockerfile 中只能有一个 ENTRYPOINT ,当指定多个时,只有最后一个起效)

11. CMD

格式:CMD ["","",""]
指定启动容器时执行的命令,每一个Dockerfile只能有一条CMD指令,若是指定了多条指令,则最后一条执行。(会被启动时指定的命令覆盖)

Dockerfile编写

这是一个简单的Dockerfile文件,就是用jdk8运行一个springboot的程序。

FROM oracle/openjdk:8
MAINTAINER xiuaiba@163.com
WORKDIR /opt
ADD jdevtemplateboot.jar app.jar
CMD ["java","-jar","app.jar"]

docker-compose.yml 文件的编写

version: '2.0'
services:
  web_test:
    build: .
    ports:
    - "8088:8080"
    volumes:
    - /mnt/logs/void_roi:/apps/void_roi/logs

docker-compose 运行

docker image 建立

docker-compose build --no-cache;

docker image 运行

docker-compose up -d

docker image 中止

docker-compose down

先写这么多,后面会在进行修改的。。。

相关文章
相关标签/搜索