AmruthPillai / Reactive-Resume

A one-of-a-kind resume builder that keeps your privacy in mind. Completely secure, customizable, portable, open-source and free forever. Try it out today!
https://rxresu.me
MIT License
20.71k stars 2.2k forks source link

The answer with "" or #1981

Open Czj1997-02 opened 4 days ago

Czj1997-02 commented 4 days ago

if your yml like me

version: "3.8"

# In this Docker Compose example, it assumes that you maintain a reverse proxy externally (or chose not to).
# The only two exposed ports here are from minio (:9000) and the app itself (:3000).
# If these ports are changed, ensure that the env vars passed to the app are also changed accordingly.

services:
  # Database (Postgres)
  postgres:
    image: postgres:16-alpine
    restart: unless-stopped
    volumes:
      - postgres_data:/var/lib/postgresql/data
    environment:
      POSTGRES_DB: postgres
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: postgres
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U postgres -d postgres"]
      interval: 10s
      timeout: 60s
      retries: 5

  # Storage (for image uploads)
  minio:
    image: minio/minio
    restart: unless-stopped
    command: server /data
    ports:
      - "3006:9000"
    volumes:
      - minio_data:/data
    environment:
      MINIO_ROOT_USER: minioadmin
      MINIO_ROOT_PASSWORD: minioadmin

  # Chrome Browser (for printing and previews)
  chrome:
    image: ghcr.io/browserless/chromium:latest
    restart: unless-stopped
    environment:
      TIMEOUT: 600000
      CONCURRENT: 10
      TOKEN: chrome_token
      EXIT_ON_HEALTH_FAILURE: true
      PRE_REQUEST_HEALTH_CHECK: true

  app:
    image: amruthpillai/reactive-resume:latest
    restart: unless-stopped
    ports:
      - "3007:3000"
    depends_on:
      - postgres
      - minio
      - chrome
    environment:
      # -- Environment Variables --
      PORT: 3000
      NODE_ENV: production

      # -- URLs --
      # 内网可访问即可(穿透到公网不影响)
      # PUBLIC_URL: http://localhost:3000
      PUBLIC_URL: http://192.168.1.100:3007
      # STORAGE_URL: http://localhost:9000/default
      # 1. 命名不能为空且最好(必须?)是英文
      # 2. 需要一个内外都能访问到的minio存储服务地址(如果是内网环境则需要内网IP可访问的存储服务地址),因为会自动跳转打开此地址
      STORAGE_URL: http://youip/minio/default

      # -- Printer (Chrome) --
      CHROME_TOKEN: chrome_token
      CHROME_URL: ws://chrome:3000

      # -- Database (Postgres) --
      DATABASE_URL: postgresql://postgres:postgres@postgres:5432/postgres

      # -- Auth --
      ACCESS_TOKEN_SECRET: access_token_secret
      REFRESH_TOKEN_SECRET: refresh_token_secret

      # -- Emails --
      MAIL_FROM: noreply@localhost
      # SMTP_URL: smtp://user:pass@smtp:587 # Optional

      # -- Storage (Minio) --
      STORAGE_ENDPOINT: minio
      STORAGE_PORT: 9000
      STORAGE_REGION: us-east-1 # Optional
      STORAGE_BUCKET: default
      STORAGE_ACCESS_KEY: minioadmin
      STORAGE_SECRET_KEY: minioadmin
      STORAGE_USE_SSL: false
      STORAGE_SKIP_BUCKET_CHECK: false

      # -- Crowdin (Optional) --
      # CROWDIN_PROJECT_ID:
      # CROWDIN_PERSONAL_TOKEN:

      # -- Email (Optional) --
      DISABLE_SIGNUPS: true
      DISABLE_EMAIL_AUTH: false

      # -- GitHub (Optional) --
      # GITHUB_CLIENT_ID: github_client_id
      # GITHUB_CLIENT_SECRET: github_client_secret
      # GITHUB_CALLBACK_URL: http://localhost:3000/api/auth/github/callback

      # -- Google (Optional) --
      # GOOGLE_CLIENT_ID: google_client_id
      # GOOGLE_CLIENT_SECRET: google_client_secret
      # GOOGLE_CALLBACK_URL: http://localhost:3000/api/auth/google/callback

volumes:
  minio_data:
  postgres_data:

see in it

 # -- URLs --
      # 内网可访问即可(穿透到公网不影响)
      # PUBLIC_URL: http://localhost:3000
      PUBLIC_URL: http://192.168.1.100:3007
      # STORAGE_URL: http://localhost:9000/default
      # 1. 命名不能为空且最好(必须?)是英文
      # 2. 需要一个内外都能访问到的minio存储服务地址(如果是内网环境则需要内网IP可访问的存储服务地址),因为会自动跳转打开此地址
      STORAGE_URL: http://youip/minio/default
  1. you can see i change my port,so you can change like me
  2. you need to change the PUBLIC_URL to some ip you could open in your host
  3. you need to change the STORAGE_URL to some ip you could open in Internet(if you use nps like me,if you not,you only need it in you nas,so make it could open in your host is enough)