【Docker】图床搭建(NextCloud+Redis+Mariadb+PicGo+Typora)

本文详细介绍了Nextcloud的部署步骤,包括准备工作、配置docker-compose文件、设置密码等,并提供了Redis缓存配置及定时任务的设置方法。

1、准备工作

 # 工作目录请按需修改  
 work=/docker/nextcloud && mkdir -p $work && cd $work  
 
 # 防火墙  
 sudo ufw allow 7602/tcp comment 'nextcloud' && sudo ufw reload  
 sudo ufw allow 6379/tcp comment 'nextcloud' && sudo ufw reload  
 
 # 提前拉取镜像  
 docker pull nextcloud  
 docker pull mariadb  
 docker pull redis

2、配置 docker-compose

[[Docker#2、docker-compose 安装 | 安装]]

vim $work/docker-compose.yml
---
version: '3.2'

networks:
  default:
    name: nextcloud

services:
  app:
    image: nextcloud:latest
    restart: unless-stopped
    volumes:
      - ./app:/var/www/html
    environment:
      - MYSQL_PASSWORD=9x2GDKra # 按需修改
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud
      - MYSQL_HOST=db
    ports:
      - 1016:80 # 按需修改
    networks:
      - default

  cache:
    image</
### 使用 Docker 安装 Nextcloud 并配置 Redis #### 准备工作 确保已经安装了适当版本的 DockerDocker Compose。对于环境的要求如下: - **Docker 版本**:29.0.4 - **Docker Compose 版本**:2.27.0 这些工具能够简化应用程序及其依赖项的一致部署流程[^3]。 #### 创建项目目录结构 为了更好地管理和维护,建议创建一个新的文件夹来存放所有的配置文件和服务定义。例如,在终端中执行命令 `mkdir ~/nextcloud-with-redis && cd ~/nextcloud-with-redis` 来建立此目录并进入其中。 #### 编写 Docker Compose 文件 接下来编写一个名为 `docker-compose.yml` 的 YAML 文件用于描述服务之间的关系以及它们各自的设置。以下是针对 Nextcloud 加上 Redis 缓存层的一个基本例子: ```yaml version: '3' services: db: image: mariadb:10.6.17 environment: MYSQL_ROOT_PASSWORD: examplepassword MYSQL_DATABASE: nextclouddb MYSQL_USER: nextclouduser MYSQL_PASSWORD: userpassword volumes: - db_data:/var/lib/mysql app: image: nextcloud:fpm-alpine depends_on: - db - redis ports: - "8080:80" environment: - NEXTCLOUD_ADMIN_USER=admin - NEXTCLOUD_ADMIN_PASSWORD=adminpass - MYSQL_HOST=db - MYSQL_DATABASE=nextclouddb - MYSQL_USER=nextclouduser - MYSQL_PASSWORD=userpassword - REDIS_HOST=redis networks: - webnet redis: image: redis:6.2.7 command: ["redis-server", "--appendonly", "yes"] volumes: - redis_data:/data networks: webnet: volumes: db_data: redis_data: ``` 这段代码片段展示了如何通过 Docker Compose 设置三个主要组件——数据库(MariaDB)、应用服务器(Nextcloud FPM)和缓存存储器(Redis)。特别注意的是,这里设置了 Redis 主机地址以便让 Nextcloud 可以连接到它作为其对象缓存机制的一部分[^2]。 #### 启动服务 完成上述步骤后,在包含 `docker-compose.yml` 文件所在的目录下运行命令 `docker compose up -d --build` 即可启动所有必要的容器实例,并使整个平台在线可用。此时应该可以通过浏览器访问 http://localhost:8080 访问新搭建好的 Nextcloud 实例[^1]。 #### 测试与验证 一旦成功部署完毕,可以尝试上传一些测试文件至 Nextcloud 中查看是否正常运作;另外也可以登录到 Redis 容器内部 (`docker exec -it <container_id> /bin/sh`) 执行简单的键值操作指令如 SET/GET 等确认两者之间交互无误。
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值