docker-composer使用實踐
docker-composer使用實踐
Dockerfile 可以讓使用者管理一個單獨的應用容器;
Compose 則允許使用者在一個模板(YAML 格式)中定義一組相關聯的應用容器(被稱為一個 project,即專案)
例如一個 Web 服務容器再加上後端的資料庫服務容器等
檔案目錄
ghost
- ghost
- Dockfile
- nginx
- nginx.conf
- Dockfile
- data
- docker-compose.yml
docker-composer.yaml格式
ghost-app:
build:ghost
depends_on:
- db
ports:
- "2368:2368"
nginx:
build:nginx
ports:
- "80:80"
depends_on:
- ghost-app
db:
image: "mysql:5.7.15"
配置 ghost Dockerfile
FROM ghost
COPY ./config.js /var/lib/ghost/config.js
EXPOSE 2368
CMD ["npm", "start", "--production"]
config.js
nginx Dockerfile
FROM nginx
COPY nginx.conf /etc/nginx/nginx.conf
EXPOSE 80
nginx.conf
worker processes 4;
events {worker connections 1024;}
http {
server {
listen 80;
location / {
proxy pass
}
}
}
ghost docker-compare.yaml
此處資料庫相關的配置要和config.js中的配置保持一致。【注:db.volumes的值應該為:$PWD/data:/var/lib/mysql】
ghost目錄:
#將所有容器啟動,並以daemon的方式後臺執行
docke-compose up -d
啟動容器後瀏覽器訪問localhost
顯示502 Bad Gateway錯誤
表示nginx已經啟動,但是nginx和ghost-app之間的連結是不對的。
檢查:
- docker-compose.yaml
- nginx.conf
1.將已經啟動的容器停掉
docker-compose stop
2.將已經停掉的容器刪除掉
docker-compose rm
3.修改了nginx.conf之後需要重新構建映象[第一次沒有映象,執行的時候回直接建立映象,現在已經映象了,所以需要重新構建]
docker-compose build
4.使用映象啟動容器
docker-compose up -d
5.再次使用瀏覽器訪問就成功了,表示使用docker-compose拉的三個容器已經啟動,並且相互協作了
6.訪問localhost/ghost/setup/one 進行配置
localhost/ghost/editor/ 寫文章併發布,則可以在localhost看到釋出的文章。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4328/viewspace-2796647/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- CentOS7 docker docker-Composer 安裝CentOSDocker
- Redis使用與實踐Redis
- 通義靈碼實踐教程——編碼使用實踐
- Clion Debug模式使用實踐模式
- Java Optional使用的最佳實踐Java
- pt-table-checksum 使用實踐
- FlinkCDC 2.0使用實踐體驗
- 使用Portainer部署Docker容器實踐AIDocker
- 通義靈碼實踐教程——企業級能力使用實踐
- OpenGL 之 幀緩衝 使用實踐
- 使用GitHub的十個最佳實踐Github
- 介面測試工具 Postman 使用實踐Postman
- 使用蜻蜓安全挖掘漏洞實踐(一)
- dart系列之:集合使用最佳實踐Dart
- 建木在 Rainbond 上使用實踐AI
- google Guava包RateLimiter使用最佳實踐GoGuavaMIT
- 使用 MyBatis 操作 Nebula Graph 的實踐MyBatis
- 使用Prometheus、Grafana監控Artifactory實踐PrometheusGrafana
- Web安全之XSSPlatform搭建及使用實踐WebPlatform
- kubernetes實踐之六十二:Secret 使用
- kubernetes實踐之六十三:使用技巧
- Unity iOS 使用 ASTC 格式紋理實踐UnityiOSAST
- MySQL8.0中role的使用實踐MySql
- 使用 DartPad 製作程式碼實踐教程Dart
- 使用Java Optional類的最佳實踐 - oracleJavaOracle
- 使用函式式語言實踐DDD函式
- 使用nodejs構建Docker image最佳實踐NodeJSDocker
- Flink CDC MongoDB Connector 的實現原理和使用實踐MongoDB
- Web安全之XSS Platform搭建及使用實踐WebPlatform
- MQTT系列實踐二 在EGG中使用mqttMQQT
- UITableViewCell使用自動佈局的“最佳實踐”UIView
- Redis使用指南:深度解析info命令實踐!Redis
- Java 斷言 Assert 使用教程與最佳實踐Java
- Linux神器strace的使用方法及實踐Linux
- 使用sqlmapapi.py批次化掃描實踐SQLAPI
- 使用 Webpack 打造 vue – todo 應用實踐( 一 )WebVue
- 使用Mybatis批量插入大量資料的實踐MyBatis
- opencv學習實踐(3) cv::waitKey()的使用OpenCVAI