发布于 

绿联nas部署campus-imaotai教程

部署前准备

  1. 已经安装有Portainer等支持docker compose部署的工具。
  2. 从项目官方下载好配置文件,并放置于绿联nas的docker目录中,假设目录名为CampusIMT。
  3. 获取自己的硬盘 uuid(32位字母数字和4个 - )和用户 uid(5位数字),可在ssh中用查找CampusIMT或Portainer中查看任意之前有映射目录的容器确定。
  4. (可选)在绿联的docker管理界面下载以下四个镜像:
    1
    2
    3
    4
    wansyu/campus-mysql:latest
    wansyu/campus-redis:latest
    wansyu/campus-nginx:latest
    wansyu/campus-server:latest

正式部署

在Portainer中Add Stack(添加堆栈),输入任意名称,并在Web editor(Web编辑器)粘贴以下内容,注意修改自己的<uuid><uid>,然后点击Deploy the Stack(部署堆栈),若进行了上述的步骤4,则可以马上看到部署成功,否则需等待下载完成。
在Stack Detail中可以看到四个正在运行的容器。

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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
version : '3'

networks:
campus_net:
driver: bridge

services:
campus-mysql:
container_name: campus-mysql
image: wansyu/campus-mysql:latest
ports:
- "13306:3306"
volumes:
- /mnt/media_rw/<uuid>/.ugreen_nas/<uid>/Docker/CampusIMT/mysql/conf:/etc/mysql/conf.d
- /mnt/media_rw/<uuid>/.ugreen_nas/<uid>/Docker/CampusIMT/mysql/logs:/logs
- /mnt/media_rw/<uuid>/.ugreen_nas/<uid>/Docker/CampusIMT/mysql/data:/var/lib/mysql
command: [
'mysqld',
'--innodb-buffer-pool-size=80M',
'--character-set-server=utf8mb4',
'--collation-server=utf8mb4_unicode_ci',
'--default-time-zone=+8:00',
'--lower-case-table-names=1'
]
environment:
WAIT_HOSTS: campus-mysql:3306
MYSQL_DATABASE: 'campus_imaotai'
MYSQL_ROOT_PASSWORD: oddfar_imaotai
networks:
- campus_net
restart: always
campus-redis:
container_name: campus-redis
image: wansyu/campus-redis:latest
ports:
- "16379:6379"
volumes:
- /mnt/media_rw/<uuid>/.ugreen_nas/<uid>/Docker/CampusIMT/conf/redis.conf:/home/campus/redis/redis.conf
- /mnt/media_rw/<uuid>/.ugreen_nas/<uid>/Docker/CampusIMT/redis/data:/data
command: redis-server /home/campus/redis/redis.conf
networks:
- campus_net
restart: always
campus-nginx:
container_name: campus-nginx
image: wansyu/campus-nginx:latest
ports:
- "80:80"
volumes:
- /mnt/media_rw/<uuid>/.ugreen_nas/<uid>/Docker/CampusIMT/html/dist:/home/campus/projects/campus-ui
- /mnt/media_rw/<uuid>/.ugreen_nas/<uid>/Docker/CampusIMT/conf/nginx.conf:/etc/nginx/nginx.conf
- /mnt/media_rw/<uuid>/.ugreen_nas/<uid>/Docker/CampusIMT/nginx/logs:/var/log/nginx
- /mnt/media_rw/<uuid>/.ugreen_nas/<uid>/Docker/CampusIMT/nginx/conf.d:/etc/nginx/conf.d
depends_on:
- campus-server
networks:
- campus_net
restart: always
campus-server:
container_name: campus-server
image: wansyu/campus-server:latest
ports:
- "8160:8160"
volumes:
- /mnt/media_rw/<uuid>/.ugreen_nas/<uid>/Docker/CampusIMT/campus/logs:/home/campus/logs
- /mnt/media_rw/<uuid>/.ugreen_nas/<uid>/Docker/CampusIMT/campus/uploadPath:/home/campus/uploadPath
depends_on:
- campus-mysql
- campus-redis
environment:
- TZ=Asia/Shanghai
networks:
- campus_net
restart: always