Facebook
From kunkeypr, 8 Months ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 593
  1. - Vps cấu hình tối thiểu 2 core - 2 ram - 30 ssd
  2. - Tên miền đã trỏ sẵn về cloudfalre
  3.  
  4. *** Cài docker cho vps
  5. sudo apt update
  6. sudo apt install apt-transport-https ca-certificates curl software-properties-common -y
  7. curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
  8. sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"
  9. sudo apt update
  10. apt-cache policy docker-ce
  11. sudo apt install docker-ce -y
  12.  
  13. *** Cài docker compose
  14. sudo curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
  15. sudo chmod +x /usr/local/bin/docker-compose
  16. docker-compose --version
  17.  
  18. *** Cài Portainer
  19. docker swarm leave --force
  20. docker swarm init --advertise-addr $(curl ifconfig.me)
  21. docker volume rm portainer_data
  22. docker volume create portainer_data
  23. docker run -d -p 8000:8000 -p 9443:9443 -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
  24.  
  25. *** Cài Aapanel để quản lý miền bằng gói Nginx có sẵn trên panel (cài nginx trực tiếp trên vps, hoặc qua Docker cũng được nhưng sài appanel thao tác cho nhanh)
  26. wget -O install.sh http://www.aapanel.com/script/install-ubuntu_6.0_en.sh && sudo bash install.sh
  27. nếu nó hỏi có muốn cài ssl cho panel không thì nhập "n"
  28. - sau khi cài xong sẽ có thông tin quản lý aapanel nên lưu lại nhé
  29.  
  30. aaPanel Internet Address: http://51.79.203.135:7800/cbab20c3
  31. aaPanel Internal Address: http://51.79.203.135:7800/cbab20c3
  32. username: ywjwzsnh
  33. password: d17aa34b
  34.  
  35. + login vào panel theo thông tin
  36. + panel sẽ hỏi muốn cái wwebserver nào thì chọn bên LAMP (tắt hết để lại mỗi nginx vì các thứ khác mình không cần)
  37. + chờ cho nó cài xong trong lúc đó mình làm tiếp các phần khác
  38.  
  39. *** Cấu hình  Portainer
  40. + đi vào ip_vps:9000
  41. + nêú gặp lỗi này thì mình khởi động lại portainer
  42. + trước hết stop portainer đã
  43. docker ps
  44. docker stop 2d47f25a8de4
  45. docker rm 2d47f25a8de4
  46. docker run -d -p 8000:8000 -p 9443:9443 -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
  47. câú hình tài khoản quản trị portainer và thêm registy của gitlab.com vào
  48.  
  49. *** Cài đặt cơ sở dữ liệu Mongodb
  50. Portainer > Stack > Add Stack > name = mongodb > Chọn Web Editor và dán config này vào
  51. version: "3.4"
  52. services:
  53.   mongodb_container:
  54.     image: mongo:latest
  55.     environment:
  56.       MONGO_INITDB_ROOT_USERNAME: kunkeypr
  57.       MONGO_INITDB_ROOT_PASSWORD: 01635912116Aa
  58.     ports:
  59.       - 26922:27017
  60.     volumes:
  61.       - mongodb_data_container:/data/db
  62.  
  63. volumes:
  64.   mongodb_data_container:
  65.  
  66. cuối cùng chọn Deploy Stack
  67.  
  68. *** Cài đặt Redis Cache
  69. tương tự mongodb
  70. Portainer > Stack > Add Stack > name = redis > Chọn Web Editor và dán config này vào
  71.  
  72. version: '3.4'
  73.  
  74. services:
  75.   redis:
  76.     image: redis:6.2-alpine
  77.     restart: always
  78.     ports:
  79.       - 6379:6379
  80.     command: redis-server --save 60 1 --requirepass 01635912116Aa --loglevel warning
  81.     volumes:
  82.       - cache:/data
  83. volumes:
  84.   cache:
  85.     driver: local
  86. cuối cùng chọn Deploy Stack
  87.  
  88. *** Kéo source code từ gitlab về (cách đẩy source lên gitlab và build source images thì các bạn có thể tự google nhé, nhớ là tag images phải là  lastest)
  89. *** Kiểm tra MongoDb đã kết nối được chưa (mình sử dụng phần mềm NoSql Bootser for mongo - port mongo các bạn để ý ở config bên trên nhé mình đã đổi sang 26922 - và các bạn phải mở port này nếu không sẽ không connect được, mở cả port 6379 trong Appanel > Security)
  90. *** Cấu hình Docker Compose cho dự án (cái này hơi khó nên các bạn để ý kỹ nhé)
  91. *** Cấu hình TeleBot cho dự án (cái này hơi khó nên các bạn để ý kỹ nhé)
  92. All Done
  93. *** Cài đặt Source Code lên vps (làm như mongodb và redis thôi)
  94. Portainer > Stack > Add Stack > name = tên website (cái này nhập gì tùy nhá) > Chọn Web Editor và dán config này vào
  95. version: "3.4"
  96.  
  97. services:
  98.   server:
  99.     image: registry.gitlab.com/s86live/server-v3:latest
  100.     ports:
  101.       - "8009:8009"
  102.     restart: always
  103.     environment:
  104.       - NTBA_FIX_319=1
  105.       - ENV_ENVIROMENT=developer
  106.       - SCRET_KEY=mWViBiW3CGRGFhoj3WjrelH26Iiz8zIj
  107.       - JWT_EXPIRES_IN=1d
  108.       - PORT=8009
  109.       - DATABASE_HOST=51.79.203.135
  110.       - DATABASE_PORT=26922
  111.       - DATABASE_USERNAME=kunkeypr
  112.       - DATABASE_PASSWORD=01635912116Aa
  113.       - DATABASE_NAME=s86live
  114.       - REDIS_HOST=51.79.203.135
  115.       - REDIS_PORT=6379
  116.       - REDIS_PASSWORD=01635912116Aa
  117.       - ADMIN_USERNAME=admin
  118.       - ADMIN_PASSWORD=123123123
  119.       - TELEGRAM_TOKEN=6628227515:AAH6HMwcZuiFCVQc-__DkSufgH1ziYavaT0
  120.       - TELEGRAM_NOTIFY_GROUP=-854952073
  121.       - TELEGRAM_RECHARGE_GROUP=-854952073
  122.       - TELEGRAM_ALERT_GROUP=-854952073
  123.       - TELEGRAM_GIFTCODE_GROUP=-854952073
  124.       - TELEGRAM_SPIDER_GROUP=-854952073
  125.       - TELEGRAM_XOCDIA_GROUP=-854952073
  126.       - TELEGRAM_LOGS=-854952073
  127.       - TELEGRAME_CMS=-935933352
  128.   cms:
  129.     image: registry.gitlab.com/s86live/cms-v2:latest
  130.     ports:
  131.       - "2223:2223"
  132.     restart: always
  133.     environment:
  134.       - PORT=2223
  135.   play:
  136.     image: registry.gitlab.com/s86live/play:latest
  137.     ports:
  138.       - "3244:3244"
  139.     restart: always
  140.     environment:
  141.       - PORT=3244
  142.   index:
  143.     image: registry.gitlab.com/s86live/index:latest
  144.     ports:
  145.       - "3246:3246"
  146.     restart: always
  147.     environment:
  148.       - PORT=3246
  149.  
  150. *** Kiểm tra xem tất cả các service đã hoạt động chưa bằng cách truy cập vào port mà service đang chạy (port bao nhiêu thì xem ở cấu hình bên trên)
  151. all done
  152. *** Cấu hình tên miền về các service bên trên (cái này thao tác hơi khó lên để ý kỹ nha)
  153. server
  154. {
  155.     server_name server.s86.fun;
  156.     location / {
  157.       proxy_http_version 1.1;
  158.       proxy_set_header   X-Forwarded-For $remote_addr;
  159.       proxy_set_header   Host $http_host;
  160.       proxy_pass         http://127.0.0.1:8009;
  161.       proxy_set_header Upgrade $http_upgrade;
  162.       proxy_set_header Connection "upgrade";
  163.     }
  164. }
  165. đây là cấu hình nginx cho tên miền
  166. - nhớ thay server.s86.fun = tên miền của các service cho phù hợp với các service
  167. - nhớ thay port 8009 cho phù hợp với các service
  168. sau khi cấu hình xong thì truy cập tên miền của các service vừa rồi xem đã chuẩn chưa
  169. *** Cấu hình lại socket của trang play và cms (cái này đáng ra là phải cấu hình ở local trước khi đẩy git, nhưng mà cái này là dự án cũ nên mình cấu hình lại )
  170. *** Chờ gitlab build xong source rồi chúng ta khởi động lại dự án bằng cách truy cập Portainer > Services > chọn những service cần cập nhật > Chọn Update > nhớ  bật Re-pull image
  171.  
  172. *** Kiểm tra lại xem socket url đã được thay đổi chưa (sử dụng tab ẩn danh để không dính cache trình duyệt)
  173.  
  174. All Done
  175. *** Hiện tại chưa có bot, mình sẽ import data bot và bật bot
  176.  
  177.  All done hoạt động bình thường
  178. kết thúc....