我的學習系列 - 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

先寫這麼多,後面會在進行修改的。。。

相關文章
相關標籤/搜索