使用Dockerfile建立映象,Docker compose部署服務
一、Dockerfile指令簡介
1、FROM指定來源於哪個映象
例如:FROM centos FROM centos:latest
2、MAINTAINER指定作者資訊
例如:MAINTAINER wyu wyu.com
3、RUN映象操作指令
例如:RUN yum install httpd
RUN [“/bin/bash”,”-c”,”echo hello”]
4、CMD
5、EXPOSE
例如:EXPOSE 22 80 8443用來指定要映射出去的埠,比如容器內部啟動了sshd和nginx,所以要將22和80埠暴露出去,需要配合-P,在啟動容器時加引數-P自動分配,-p指定具體埠。
6、ENV為後續的RUN提供環境變數
例如:ENV PATH /usr/local/musql/bin:$PATH
ENV MYSQL_version 5.6
7、ADD將本地的一個檔案或目錄拷貝到某個目錄裡
格式為 ADD <src><dest>,其中src為Dockerfile所有目錄的相對路徑,也可以是一個url,例如ADD <conf/vhosts></usr/local/nginx/conf>
8、COPY,格式同ADD,不支援url
9、ENTRYPOINT格式類似於CMD
10、VOLUME建立一個可以從本地主機或其他容器掛載的掛載點
例如 VOLUME [“/data”]
11、USER指定執行容器的使用者
例如:USER wyu
12、WORKDIR為後續RUN,CMD,ENTRYPOINT指定工作目錄
例如:WORKDIR /path/to/workdir
二、Dockerfile建立映象
1、下載nginx配置檔案
wget http://www.apelearn.com/study_v2/.nginx_conf
2、編輯Dockerfile,加入以下內容
[[email protected] docker]# cat Dockerfile
##set the base image to CentOS
FROM centos
# File Author / Maintainer
MAINTAINER wyu wyu.com
# Install necessary tools
RUN yum install -y pcre-devel wget net-tools gcc zlib zlib-devel make openssl-devel
# Install Nginx
ADD http://nginx.org/download/nginx-1.8.0.tar.gz .
RUN tar zxvf nginx-1.8.0.tar.gz
RUN mkdir -p /usr/local/nginx
RUN cd nginx-1.8.0 && ./configure --prefix=/usr/local/nginx && make && make install
RUN rm -fv /usr/local/nginx/conf/nginx.conf
COPY .nginx_conf /usr/local/nginx/conf/nginx.conf
# Expose ports
EXPOSE 80
# Set the default command to execute when creating a new container
ENTRYPOINT /usr/local/nginx/sbin/nginx && tail -f /etc/passwd
3、建立映象
[[email protected] docker]# docker build -t test1_nginx .
注意語句最後有個 . 意思為從當前目錄尋找Dockerfile檔案
4、檢視建立的映象
5、開啟指定映象
[[email protected] docker]# docker run -itd -p 8099:80 test1_nginx bash
三、使用Docker compose部署服務
1\docker compose可以方便我們快捷高效的管理容器的啟動,停止,重啟等操作,類似於Linux下的shell指令碼,基於yaml語法,在該檔案裡可以描述應用的架構,比如使用映象,資料卷,網路模式,監聽埠等。
2、安裝compose
curl -L
https://github.com/docker/compose/releases/download/1.17.0-rc1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
3、修改許可權
chomd 755 /usr/local/bin/docker-compose
4、檢視版本資訊
5、部署實際服務
(1)編輯docker-compose.yml檔案
[[email protected] ~]# cat docker-compose.yml
version: "2"
services:
app1:
image: centos_nginx
ports:
- "8080:80"
networks:
- "net1"
volumes:
- /data/:/data
app2:
image:wyu_net
networks:
- "net2"
volumes:
- /data/:/data1
entrypoint: tail -f /etc/passwd
networks:
net1:
driver: bridge
net2:
driver: bridge
(2)啟動兩個容器
---------------------
作者:吳用丶
來源:CSDN
原文:https://blog.csdn.net/weixin_42774383/article/details/83011889
版權宣告:本文為博主原創文章,轉載請附上博文連結!
相關推薦
使用Dockerfile建立映象,Docker compose部署服務
一、Dockerfile指令簡介 1、FROM指定來源於哪個映象 例如:FROM centos FROM centos:latest 2、MAINTAINER指定作者資訊 例如:MAINTAINER wyu wyu.com 3、RUN映象操作指令 例如:RUN yu
Dockerfile,docker-compose部署服務
dockerfile格式 FROM //指定基於哪個基礎映象 格式 FROM 或者 FROM :, 比如 FROM centos FROM centos:latest MAINTAINER //指定作者資訊 格式 MAINTAIN ,比如 MA
docker compose部署服務
docker compose部署服務1 用docker compose部署服務- 需求:假如現在我們手裏有很多容器,每個容器對應每個服務,有nginx容器,redis容器,mysql容器等。現在我們需要批量化的去管理,批量啟動,停止,重啟等操作!當然你會說用shell,可是如何不用shell來完成需求呢,那就
Docker(八)用docker compose部署服務
docker用docker compose部署服務 docker compose可以方便我們快捷高效地管理容器的啟動、停止、重啟等操作,它類似linux下的shell腳本,基於yaml語法,在該文件裏我們可以描述應用的架構,比如用什麽鏡像、數據卷、網絡模式、監聽端口等信息。我們可以在一個compose文件中定
Dockerfile 建立第一個映象,docker
在上一篇 《執行第一個docker容器》中我說過docker build 指令是一個相對 其他指令比較複雜的指令,這裡呢就跟大家一起來分享一下該指令。 docker build指令是用來建立一個映象的
docker swarm 和compose部署服務,解決跨主機網路問題和ip不固定問題(二)
一 docker 版本1.13及以上,compose版本1.11及以上。docker的搭建和執行compose參考官方文件完成二 docker swarm 和compose 簡介Docker宣佈在1.12版的引擎中內建編排能力,也就是 Swarm Mode,在容器之上引入了
docker swarm 和compose部署服務,解決跨主機網路問題和ip不固定問題(一)
一 要求: docker版本13以上;compose版本11以上;關閉防火牆和selinux二 composev3版本加入了很多功能,現在我肯可以很方便的結合docker swarm 和compose來完成不同主機之間的通訊問題三 準別2臺虛機,安裝docker ,配置d
Docker之搭建2048遊戲,四種網路模式的學習,容器和管理,資料卷的管理,用Dockerfile建立映象
1.映象管理 物理機上: 軟體包: docker-engine-17.03.1.ce-1.el7.centos.x86_64.rpm docker-engine-selinux-17.03.1.ce-1.el7.centos.noarch.rpm [
Docker介紹,安裝docker,映象管理,通過容器建立映象,使用模板建立映象
Docker介紹 官網 www.docker.com github https://github.com/docker/docker.github.io 開源的容器引擎,可以讓開發者打包應用以及依賴的庫,然後釋出到任何流行的linux發行版上,移植很方便 由g
[轉載] Dockerfile建立自定義Docker映象以及CMD與ENTRYPOINT指令的比較
1.概述 建立Docker映象的方式有三種 docker commit命令:由容器生成映象; Dockerfile檔案+docker build命令; 從本地檔案系統匯入:OpenVZ的模板。 最近學習了Dockerfile檔案的相關配置,這裡做一下簡單的
[轉]Docker基礎-使用Dockerfile建立映象
本文轉自:https://www.cnblogs.com/jie-fang/p/7927643.html 1、基本結構 Dockerfile由一行行命令語句組成,並支援以#開頭的註釋行。例如: # This dockerfile uses the ubuntu image #
Docker實戰:使用Dockerfile建立映象
#第一行必須指定基於的基礎映象 FROM centos #維護者資訊 MAINTAINER docker_user [email protected] #映象的操作指令 RUN ........ #容器啟動時執行指令 CMD /usr/sbi
docker——Dockerfile建立映象
1 FROM centos 2 3 MAINTAINER yaolin 4 5 COPY jdk1.7.0_79 jdk1.7.0_79 6 ADD websocket.jar app.jar 7 8 ENV JAVA_HOME=/jdk1.7.0_79 9 ENV PATH=$JA
使用Dockerfile建立自己的docker映象
前言 docker理論之類的就不說了,網上一大頓,直接說我們最關心的,就是如何構建我們自己的映象 映象是 Docker 的基礎,它是容器執行環境的靜態模板,包含了應用以及依賴環境。 製作映象步驟如下: 1.準備構建環境: 映象構建環境,就是製作映象的目錄,裡面包含了
Docker技術入門與實戰 第8章 使用Dockerfile建立映象
Dockerfile是一個文字格式的配置檔案,使用者可以使用Dockerfile來快速建立自定義映象。本章首先介紹Dockerfile典型的基本結構和它支援的眾多指令,並具體講解通過這些指令來編寫定製映象的Dockerfile,以及如何生成映象。最後介紹使用Dockerfil
docker commit/Dockerfile製作映象,save/load打包映象
一、commit製作映象 啟動一個容器,對容器修改操作,會儲存到容器的儲存層,當容器銷燬儲存層也銷燬。 但我們可以用commit命令把儲存層儲存為映象。 ①啟動一個nginx容器 docker run --name nginx -d -p 80:80 nginx
docker官方映象下載及使用Dockerfile建立映象
2、search centos 3、docker pull centos:7.2.1511 4、建立Dockerfile檔案: [[email protected] centos7.2]# cat Dockerfile FROM centos:7.2.1511
[Docker] 使用Docker-compose部署WordPress服務
使用WordPress可以快速構建一個blog,試了下很方便,主要參考:https://docs.docker.com/compose/wordpress/ 專案結構: |- <project_dir> |- db |- mysql.cnf
優化Docker映象,加速應用部署,教你6個小竅門
基於Kubernetes的新版小米應用引擎在小米生態雲上線3個多月來,深受大家喜愛。為了讓使用者的雲端應用管理更高效、更方便,今天從6個方面分享一些溜到飛起的小竅門。 明確指定映象版本,管理更方便 為了讓版本管理起來更方便,應用部署速度更快,在建立映象的過程中,建議工
Dockerfile建立映象(ssh,http,nginx,tomcat,supervisor)
一,使用Dockerfile建立docker-ssh映象: mkdir /tmp/docker/Dockerfile cd /tmp/docker/Dockerfile vim Dolcerfile FROM rhel7 #指定基礎映象