昨天介紹完前端使用 今天來簡介一下後端
平時公司還是維持 根據建置手順去建置專案,導致環境問題光解決都有可能解決一整天QQ
關於後端建置我滿推薦這個網址
https://blog.kennycoder.io/2019/09/07/Docker-SpringBoot加PostgreSQL之compose打包教學/
目前我有寫的docker compose 會建立三個image
一個是DB server 我是用Postgres 接著是pgadmin 這個是postgres 的視覺化工具,可以幫助我們更方便的查看程式建立的資料及異動一些資料,再來是主要的OL專案
其他的可以看以下註解
version: '3.3'
services:
postgressql:
image: postgres:13.0-alpine //從docker hub download image
volumes:
- yyy:/var/lib/postgresql/data/
ports:
- "5432:5432" //這個image 佔的port
environment: //DB 資訊
- POSTGRES_DB=colearning
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=1qaz@WSX
networks:
- xxx
pgadmin:
image: dpage/pgadmin4 //從docker hub download image
ports: //這個image 佔的port
- 8001:80
environment: //pgadmin 的帳號密碼
PGADMIN_DEFAULT_EMAIL: admin@admin.com
PGADMIN_DEFAULT_PASSWORD: admin
networks:
- xxx
depends_on: //設置為posegres的Image 開啟才會繼續建立此image
- postgressql
web:
image: {userName}/colearning //專案Image名稱,username是因為要Pull上去dockerhub需要加上tag
build: ./ //dockerFile 的位置
restart: always //啟動失敗的話會自動重啟
ports: //這個image 佔的port
- "8080:8080"
environment: //環境資訊設置datasource相關資訊
- SPRING_DATASOURCE_URL=jdbc:postgresql://postgressql:5432/{dbName}
- SPRING_DATASOURCE_USERNAME= DB帳號
- SPRING_DATASOURCE_PASSWORD= DB密碼
- SPRING_JPA_HIBERNATE_DDL_AUTO=update spring data jpa設置
networks:
- xxx
depends_on:
- postgressql
volumes:
yyy:
networks:
xxx: