Github

1
2
3
# 创建文件夹及yaml文件
mkdir /opt/memos && cd /opt/memos
nano docker-compose.yaml
1
2
3
4
5
6
7
8
services:
  memos:
    image: neosmemo/memos:stable
    container_name: memos
    volumes:
      - ~/.memos/:/var/opt/memos
    ports:
      - 5230:5230

使用外部数据库

Postgres数据库

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
services:
  postgres:
    image: postgres:16-alpine
    restart: unless-stopped
    environment:
      POSTGRES_DB: memos
      POSTGRES_USER: memos
      POSTGRES_PASSWORD: memosss  # 替换为实际密码
    volumes:
      - ./postgres_data:/var/lib/postgresql/data
    healthcheck:  # 添加健康检查
      test: ["CMD-SHELL", "pg_isready -U memos"]
      interval: 5s
      timeout: 5s
      retries: 5

  memos:
    image: neosmemo/memos:stable
    restart: unless-stopped
    depends_on:
      postgres:
        condition: service_healthy
    environment:
      - MEMOS_DRIVER=postgres
      - MEMOS_DSN=postgresql://memos:memosss@postgres:5432/memos?sslmode=disable  # 添加 sslmode
    ports:
      - "127.0.0.1:5230:5230"
    volumes:
      - ./memos_data:/var/opt/memos
1
docker compose up -d