日韩精品成人无码专区免费-国产99久久久久久免费看-国产精品丝袜久久久久久不卡-国产精品无码一区二区三区

Docker系列之使用Docker Compose編排容器

發(fā)布時間:2024-03-07 點擊:134
服務器
1. 前言
docker compose 是 docker 容器進行編排的工具,定義和運行多容器的應用,可以一條命令啟動多個容器。
使用compose 基本上分為三步:
1.dockerfile 定義應用的運行環(huán)境
2.docker-compose.yml 定義組成應用的各服務
3.docker-compose up 啟動整個應用
2. 安裝compose
直接從github下載即可,前提要先安裝docker,版本要1.9.1以上
note that compose 1.8.0 requires docker engine 1.10.0 or later for version 2 of the compose file format, and docker engine 1.9.1 or later for version 1.
# curl -l https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose# chmod x /usr/local/bin/docker-compose也可以用pip或官網(wǎng)的run.sh腳本安裝
安裝后確認
# docker-compose --version
3. 使用compose
3.1 創(chuàng)建一個python應用, 使用flask,將數(shù)值記入redis
3.1.1 建立一個應用的目錄,創(chuàng)建python文件
# mkdir python# cd python# vi app.py from flask import flaskfrom redis import redisapp = flask(__name__)redis = redis(host=\\\'redis\\\', port=6379)@app.route(\\\'/\\\')def hello(): redis.incr(\\\'hits\\\') return \\\'hello world! i have been seen %s times.\\\' % redis.get(\\\'hits\\\')if __name__ == __main__: app.run(host=0.0.0.0, debug=true)# vi requirements.txt flaskredis3.1.2 創(chuàng)建 dockerfile
在同一目錄下,創(chuàng)建dockerfile
# vi dockerfile from python:2.7add . /codeworkdir /coderun pip install -r requirements.txtcmd python app.py對上面的dockerfile做一下簡單說明:
容器使用python 2.7的鏡像
將當前目錄下文件拷貝到容器內(nèi)/code
指定工作目錄為/code
安裝python需要的庫:flask, redis
容器執(zhí)行命令 python app.py
3.1.3 創(chuàng)建編排腳本
在同一目錄下,創(chuàng)建 docker-compose.yml
# cat docker-compose.yml version: \\\'2\\\'services: web: build: . ports: - 5000:5000 volumes: - .:/code depends_on: - redis redis: image: redis對上面的編排腳本做一下簡單說明:
這個應用定義了兩個服務:web, redis
web容器通過當前路徑下的dockerfile生成
web容器內(nèi)的5000端口映射到主機的5000端口
將當前目錄掛載到web容器內(nèi)/code
web容器依賴于redis容器
redis容器從docker hub獲取鏡像
3.1.4 啟動應用
會執(zhí)行編排腳本,分別制作和抓取web,redis鏡像,啟動容器
# docker-compose up
3.1.5訪問應用
http://localhost:5000/
3.2 其他命令
3.2.1 daemon模式啟動/停止
# docker-compose up -d
# docker-compose stop
3.2.2 查看信息
# docker-compose ps
3.2.3 對容器執(zhí)行命令(一次)
#docker-compose run services cmd例如:查看web容器環(huán)境變量
# docker-compose run web env3.3 創(chuàng)建一個wordpress應用
3.3.1建立一個應用的目錄
# mkdir wordpress# cd wordpress3.3.2 創(chuàng)建 docker-compose.yml
# cat docker-compose.yml version: \\\'2\\\'services: db: image: mysql:5.7 volumes: - ./.data/db:/var/lib/mysql restart: always environment: mysql_root_ mysql_database: wordpress mysql_user: wordpress mysql_ wordpress: depends_on: - db image: wordpress:latest links: - db ports: - 8000:80 restart: always environment: wordpress_db_host: db:3306 wordpress_db_mysql的數(shù)據(jù)目錄掛載到當前目錄下,./.data/db不存在時會自動創(chuàng)建。
3.3.3 啟動應用
# docker-compose up -d
3.3.4 確認
# docker-compose ps
3.3.5 訪問應用
http://localhost:8000/
初始化設置后,就可以看到wordpress的頁面
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持西部數(shù)碼。

老域名與新域名如何選擇?兩者有什么區(qū)別
筆記本電腦開機后鼠標無法使用如何解決
客戶移動網(wǎng)打不開我這里電信沒問題
【淮南網(wǎng)站建設】怎么解決網(wǎng)站關鍵詞密度為0的問題?
云服務器硬盤的技術博客問答
網(wǎng)站備案時長-備案平臺
怎么做公司網(wǎng)站 一般分為這幾步
怎么和云服務器互傳文件在哪里