feat: add docker compose file for development (#1769)

* Add support to fetch devProxyServer from environment

* Add docker compose file for developer

---------

Co-authored-by: Athurg Feng <athurg@gooth.org>
This commit is contained in:
Athurg Gooth 2023-05-29 19:49:47 +08:00 committed by GitHub
parent 845297ec03
commit 97df1a82c7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 33 additions and 1 deletions

28
docker-compose.dev.yaml Normal file
View file

@ -0,0 +1,28 @@
# 1.Prepare your workspace by:
# docker compose run api go install github.com/cosmtrek/air@latest
# docker compose run web npm install
#
# 2. Start you work by:
# docker compose up -d
#
# 3. Check logs by:
# docker compose logs -f
#
services:
api:
image: golang:1.19.3-alpine3.16
working_dir: /work
command: air -c ./scripts/.air.toml
volumes:
- .:/work/
- ./.air/go/:/go/ # Cache for go mod database
web:
image: node:18.12.1-alpine3.16
working_dir: /work
depends_on: ["api"]
ports: ["3001:3001"]
environment: ["DEV_PROXY_SERVER=http://api:8081/"]
command: npm run dev
volumes:
- ./web:/work
- ./.air/node_modules/:/work/node_modules/ # Cache for Node Modules

View file

@ -2,7 +2,11 @@ import { resolve } from "path";
import { defineConfig } from "vite";
import react from "@vitejs/plugin-react-swc";
const devProxyServer = "http://localhost:8081/";
let devProxyServer = "http://localhost:8081/";
if (process.env.DEV_PROXY_SERVER && process.env.DEV_PROXY_SERVER.length > 0) {
console.log("Use devProxyServer from environment: ", process.env.DEV_PROXY_SERVER);
devProxyServer = process.env.DEV_PROXY_SERVER;
}
// https://vitejs.dev/config/
export default defineConfig({