Difference between revisions of "Canvas Deployment"

From CMU ITSC Network
Line 63: Line 63:
  
 
== postgres database deployment ==
 
== postgres database deployment ==
 +
=== on postgres server ===
 
* create dokcer-compose.yml for deploy postgres  database
 
* create dokcer-compose.yml for deploy postgres  database
 +
<syntaxhighlight lang=bash>
 +
$ mkdir postgres
 +
$ cd postgres
 +
$ vim docker-compose.yml
 +
</syntaxhighlight>
 +
add line in docker-compose.yml like
 +
<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>

Revision as of 04:47, 23 July 2020

Diagram

Canvas.cm.edu.png

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

nfs share file configuration

on file share server

  • 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