Difference between revisions of "Canvas Deployment"
From CMU ITSC Network
Line 72: | Line 72: | ||
add line in docker-compose.yml like | add line in docker-compose.yml like | ||
<syntaxhighlight lang=bash> | <syntaxhighlight lang=bash> | ||
+ | version: '3' | ||
+ | services: | ||
+ | pg: | ||
+ | image: postgres:12.3 | ||
+ | container_name: postgres | ||
+ | restart: always | ||
+ | environment: | ||
+ | POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} | ||
+ | POSTGRES_DB: ${POSTGRES_DB} | ||
+ | volumes: | ||
+ | - ./data:/var/lib/postgresql/data | ||
+ | ports: | ||
+ | - 5432:5432 | ||
+ | adminer: | ||
+ | image: adminer | ||
+ | restart: always | ||
+ | ports: | ||
+ | - 8080:8080 | ||
+ | </syntaxhighlight> | ||
+ | * create .env file for environment variables use in container | ||
+ | <syntaxhighlight lang=bash> | ||
+ | $ vim .env | ||
+ | </syntaxhighlight> | ||
+ | add line in .env file like | ||
+ | <syntaxhighlight lang=bash> | ||
+ | POSTGRES_PASSWORD=<your password> | ||
+ | POSTGRES_DB=canvas | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | * deploy postgres | ||
+ | <syntaxhighlight lang=bash> | ||
+ | $ docker-compose up -d | ||
</syntaxhighlight> | </syntaxhighlight> |
Revision as of 04:51, 23 July 2020
Diagram
domain : canvas.cm.edu
rce domain : rce-canvas.cm.edu
nginx load balancer
- ip : 10.110.60.55
share file ip : 10.110.60.239
- server ubuntu 18.04 with docker, cpu 4, ram 8
- ip : 10.110.60.239
postgres :
- server : ubuntu 18.04 with docker, cpu 4, ram 8
- ip :10.110.60.209
canvas-lms
- server : ubuntu 16.04 cpu 8, ram 8
- ip : 10.110.60.215, 10.110.60.144
- install nfs
$ sudo apt-get install -y nfs-kernel-server
- create directory for file sharing
$ mkdir -p /home/cnoc/share
$ sudo mkdir -p /export/cnoc
$ sudo chown cnoc:cnoc /export/cnoc
- bind mount filesystem edit file /etc/fstab
$ sudo vim /etc/fstab
add line end of file like
UUID=702da501-ff9a-11e9-a6a6-506b8dc215cd / ext4 defaults 0 0
UUID=702da500-ff9a-11e9-a6a6-506b8dc215cd /boot ext4 defaults 0 0
/swap.img none swap sw 0 0
/home/cnoc/share /export/cnoc none bind 0 0
mount filesystem
$ sudo mount -a
- export fs configuration
$ sudo vim /etc/exports
add line end of file like this allow canvas lms use nfs exports if add canvas-lms server you have to add new server ip address here
/export/cnoc 10.110.60.215(rw,sync,no_root_squash,no_subtree_check)
/export/cnoc 10.110.60.144(rw,sync,no_root_squash,no_subtree_check)
restart nfs service
$ sudo service nfs-kernel-server restart
postgres database deployment
on postgres server
- create dokcer-compose.yml for deploy postgres database
$ mkdir postgres
$ cd postgres
$ vim docker-compose.yml
add line in docker-compose.yml like
version: '3'
services:
pg:
image: postgres:12.3
container_name: postgres
restart: always
environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_DB: ${POSTGRES_DB}
volumes:
- ./data:/var/lib/postgresql/data
ports:
- 5432:5432
adminer:
image: adminer
restart: always
ports:
- 8080:8080
- create .env file for environment variables use in container
$ vim .env
add line in .env file like
POSTGRES_PASSWORD=<your password>
POSTGRES_DB=canvas
- deploy postgres
$ docker-compose up -d