阅读 424

使用 Docker 安装 Chevereto

1.安装 Docker-Compose

下载 Docker-Compose 二进制文件并将其设为可执行状态

curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
复制代码
2.安装 mariaDb
docker search mariadb
docker pull mariadb
复制代码

3.安装 chevereto
docker search chevereto
docker pull chevereto
复制代码

4.准备Docker Compose 文件

创建一个目录用于存放 docker-compose.yml 文件

mkdir chevereto
touch docker-compose.yml
复制代码

文件内容如下,配置了依赖的 chevereto 以及 mariadb

version: '3'

services:
  db:
    image: mariadb
    container_name: chevereto-mysql
    # 挂载容器中的mysql数据卷到本地database文件夹
    volumes:
      - ./database:/var/lib/mysql:rw
    restart: always
    networks:
      - chevereto-net
    # 设置容器中的mysql的root用户密码以及其他用户
    environment:
      MYSQL_ROOT_PASSWORD: 123
      MYSQL_DATABASE: chevereto
      MYSQL_USER: chevereto
      MYSQL_PASSWORD: chevereto
    ports:
     - 9097:3306

  chevereto:
    depends_on:
      - db
    image: nmtan/chevereto
    container_name: chevereto
    restart: always
    networks:
      - chevereto-net
    # 设置CHEVERETO_DB的一些参数
    environment:
      CHEVERETO_DB_HOST: db
      CHEVERETO_DB_USERNAME: chevereto
      CHEVERETO_DB_PASSWORD: chevereto
      CHEVERETO_DB_NAME: chevereto
      CHEVERETO_DB_PREFIX: chv_
    # 挂载容器中的images文件夹到本地的chevereto_images文件夹,以及
    # 将本地的conf/upload.ini配置文件挂载到容器的/usr/local/etc/php/conf.d/中
    volumes:
      - ./chevereto_images:/var/www/html/images:rw
      - ./conf/upload.ini:/usr/local/etc/php/conf.d/upload.ini:ro
    # 端口映射,本机:容器,需要配置安全组
    ports:
      - 9099:80
networks:
  chevereto-net:
volumes:
  database:
  chevereto_images:

复制代码
5.启动容器
docker-compose up -d
复制代码

6.为 images 文件夹添加权限
docker exec -it chevereto /bin/bash
chmod 777 /var/www/html/images
复制代码

进入 chevereto 运行中的容器,为 images 目录开放权限,此文件夹会被用于存放图片。chevereto 启动后如果提示其它目录无访问权限,也可依照此法进行修改。

7.成功启动