標籤

bat (52) 作品 (38) python (21) shell (17) windows (11) 虛擬機 (11) php (10) CPP (6) KMS (6) 程式設計 (6) docker (5) 使用教學 (5) xoops (4) 公文 (4) Apache2 (3) Excel (3) juniper (3) 資料庫 (3) mysql (2) 免動手 (2) 資料結構 (2) 軟體廣播 (2) 電腦維修 (2) Android Studio (1) Apple IPAD管理 (1) Arduino (1) CSS (1) LAMP (1) NAS (1) Ubuntu (1) VHD (1) Windows Server (1) 原因 (1) 程式應用 (1) 程式積木 (1) 編輯器 (1) 雲端硬碟 (1)

2021年2月22日 星期一

介接CloudSchool服務平台,JWT 實作驗證機制

 0.安裝特殊字型

$sudo yum install -y fonts-courier-prime

1.shell快速安裝開發環境
檔名:DockerEnvInstall.sh
檔案內容:
#!/bin/bash
yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
yum install -y yum-utils
yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
yum install docker-ce docker-ce-cli containerd.io
systemctl start docker
curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose version
yum install git
mkdir test
cd test
git clone https://gitlab.cloudschool.com.tw/hami/jwt_test.git
cd ~/test/jwt_test
cp env-sample .env
docker-compose up -d
docker-compose ps
cd ~/test/jwt_test/
docker exec -i jwt_test_php_1 composer install 
cp ~/test/jwt_test/config/local.php.dist ~/test/jwt_test/config/local.php
sed -i 's/root/stern123/2' ~/test/jwt_test/config/local.php
chmod 777 ~/test/jwt_test/data/  -R

重開機後,需要啟動docker,才能執行docker-compose up -d 等指令。
$sudo systemctl start docker

        現在要將data內部的db、mongodb、radis的部分搬家(理由chmod 777 ~/test/jwt_test/data),將mysqldbredismongodb移到mydata
只需要在docker-compose.yml 做修正,
然後下指令 
docker-compose down
docker-compose up -d --build
重新建立mydata即可。

檔案名稱:docker-compose.yml
檔案內容:
version: '3.3'

services:
  php:
    image: hamichen/php-fpm-7.3.14
    volumes:
      - .:/var/app
    ports:
      - "9000:9000"

  nginx:
    build: .docker/nginx/
    depends_on:
      - php
      - mysqldb
    ports:
      - "9011:80"
    links:
      - php
    volumes:
      - .:/var/app

  mysqldb:
    image: mariadb
    env_file:
      - ".env"
    environment:
      - MYSQL_DATABASE=${MYSQL_DATABASE}
      - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
      - MYSQL_USER=${MYSQL_USER}
      - MYSQL_PASSWORD=${MYSQL_PASSWORD}
      - MAX_CONNECTIONS=1024
    volumes:
      - "./mydata/db/mysql:/var/lib/mysql"
      - "./etc/mysql/conf:/etc/mysql/conf.d"
    command: mysqld --sql_mode=""

  myadmin:
    image: phpmyadmin/phpmyadmin
    ports:
      - "9012:80"
    volumes:
      - .docker/php/upload.ini:/usr/local/etc/php/conf.d/php-phpmyadmin.ini
    environment:
      - PMA_ARBITRARY=1
      - PMA_HOSTS=mysqldb
      - UPLOAD_LIMIT= 300000000
    depends_on:
      - mysqldb
  redis:
    image: redis
    command: redis-server --requirepass cs-pass
    ports:
      - "6379"
    volumes:
      - ./mydata/radis:/data

  mongodb:
    image: library/mongo:3.4.9
    volumes:
      - ./mydata/mongodb:/data/db
      - ./mydata/backup:/backup
    command: mongod --auth
    privileged: true
    environment:
      MONGO_INITDB_ROOT_USERNAME: ${MONGO_INITDB_ROOT_USERNAME}
      MONGO_INITDB_ROOT_PASSWORD: ${MONGO_INITDB_ROOT_PASSWORD}
      MONGO_INITDB_DATABASE: ${MONGO_INITDB_DATABASE}

2.手動將資料庫匯入
(1)建立資料庫
     網址輸入http://伺服器IP:9012,打開phpmyadmin的網頁。
     

(2)匯入資料庫sql
這個問題就是要設定cache權限為777,所以下指令
$chmod 777 ~/test/jwt_test/data/ -R


(3)Cloudschool服務平台


        這個平台成立的目的。在過去SFS3的時期,有許多熱血的老師付出自己的時間完成許多模組,比方說運動會檢錄系統。在資安法成立之後,許多服務要向上集中。但不可能把所有過去的模組向上集中,太多也太雜。所以CloudSchool才有後來的API架構,讓大家可以利用API來建立自己的服務。現在更利用這個平台,讓大家介接來完成模組,提供服務。

架構
  
測試流程如下:
2.選擇測試平台->測試國小 13
3.輸入帳號密碼
4.認證完成後,導回服務平台,選擇 協力伙伴測試
5.會進入 http://localhost:9011/login.php?token=xxxx ,即可讀出資料

那上述
2.選擇測試平台->測試國小 13
3.輸入帳號密碼
4.認證完成後,導回服務平台
在架構上為
4.選擇 協力伙伴測試
5.會進入 http://localhost:9011/login.php?token=xxxx ,即可讀出資料
則在架構上為

沒有留言:

張貼留言

只要點兩下,傳統右鍵選單改回Win11右鍵選單

系列文章: 1. 只要點兩下,就能將Win11 右鍵選單 回復 傳統右鍵選單 2. 只要點兩下,傳統右鍵選單改回Win11右鍵選單 上一篇提到只要點兩下,就能將Win11選單回到傳統選單。但是有沒有方法能夠回到Win11選單呢?                    ...