目 录CONTENT

文章目录

使用 Docker 部署 Memos:简易教程

Jacky
2025-02-12 / 0 评论 / 0 点赞 / 20 阅读 / 3276 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2025-02-13,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

Memos 是一个简单而高效的自托管笔记应用,适合用来存储和管理你的笔记。今天,我将介绍如何使用 Docker 来部署 Memos,并连接到一个 MySQL 数据库。

前期准备

首先,确保你已经安装了 Docker 和 Docker Compose。如果没有,请按照官方文档的步骤进行安装。

编写 docker-compose.yml

在部署 Memos 前,我们需要编写一个 docker-compose.yml 文件,配置相关的服务。

services:
  memos:
    image: neosmemo/memos:stable
    container_name: memos
    restart: always
    networks:
      - memos_network
    volumes:
      - ./memos/:/var/opt/memos
    ports:
      - "5230:5230"
    environment:
      - MEMOS_DRIVER=mysql
      - MEMOS_DSN=账号:密码@tcp(IP地址:3306)/数据库名
      - TZ=Asia/Shanghai

networks:
  memos_network:
    driver: bridge

配置解释

  1. image: neosmemo/memos:stable
    使用官方 Memos 镜像,这里指定了稳定版。

  2. container_name: memos
    设置容器名称为 memos,你可以根据需要修改。

  3. restart: always
    配置容器重启策略,确保 Docker 重启时容器能够自动重启。

  4. volumes: ./memos/:/var/opt/memos
    映射宿主机目录 ./memos/ 到容器的 /var/opt/memos,确保 Memos 的数据能够持久化存储。

  5. ports: "5230:5230"
    映射容器的端口 5230 到宿主机的同一端口,你可以通过 http://localhost:5230 来访问 Memos。

  6. environment
    设置环境变量:

    • MEMOS_DRIVER=mysql 指定数据库驱动为 MySQL。

    • MEMOS_DSN=账号:密码@tcp(IP地址:3306)/数据库名 配置数据库连接字符串。将 账号密码IP地址数据库名 替换为你的实际数据库信息。

    • TZ=Asia/Shanghai 设置时区为上海。

  7. networks
    配置 Docker 网络,使用 bridge 驱动确保容器可以通过网络互联。

启动 Memos 服务

完成 docker-compose.yml 文件后,在终端中进入该文件所在目录,执行以下命令启动 Memos 容器:

docker-compose up -d

此命令将后台运行 Memos 容器。你可以通过访问 http://localhost:5230 来查看 Memos 应用是否成功启动。

配置 MySQL 数据库

Memos 默认使用 MySQL 作为数据库,如果你已经搭建了 MySQL 数据库,确保数据库配置正确。如果你还没有 MySQL 数据库,你可以使用 Docker 部署一个 MySQL 实例。下面是一个简单的 MySQL 服务配置:

services:
  mysql:
    image: mysql:5.7
    container_name: mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: root_password
      MYSQL_DATABASE: memos_db
    ports:
      - "3306:3306"
    networks:
      - memos_network

通过 docker-compose up -d 启动 MySQL 服务后,确保 Memos 配置中的数据库信息正确无误。

访问 Memos

配置完成后,打开浏览器并访问 http://localhost:5230,你将看到 Memos 的登录页面。如果一切正常,你就可以开始使用 Memos 来管理你的笔记了。

总结

通过使用 Docker 部署 Memos,我们可以非常方便地将这个笔记管理工具在本地或服务器上进行自托管。Docker Compose 帮助我们快速启动并管理多个容器,让部署过程变得更加简单和可维护。

希望这个教程对你有所帮助,如果你有任何问题,欢迎留言讨论!

0

评论区