將flask 微服務項目部署到阿里雲服務器

1. linux本地版

本地運行還挺容易的

1.nameko需要依賴於rabbitMQ-server ,

apt install rabbitmq-server

2.然後在終端運行nameko run xxx,安裝需要的包(nameko,pyMysql,DBUtils等),因爲上面安裝的是在虛擬環境中的

3.在pycharm中打開flask項目,運行前要選擇一個解釋器,安裝需要重新安裝需要的包,因爲解釋器可能是虛擬環境中的,安裝之後就可以在本地運行了。

2.Linux非docker版

下面的博客寫的不錯,幾乎可以解決所有問題,但沒有配置nginx等,會有一個WARNING。

WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.

https://blog.csdn.net/bull521/article/details/90692213chacha

查看進程的PID              ps -aux

殺死xxxx這個進程          kill -s 9 xxxx

3.linux docker版

1.安裝docker,https://segmentfault.com/a/1190000004452499(這個是個坑,docker版本過低)

 

2.建議修改鏡像源,這樣下載鏡像會快很多,鏈接https://www.cnblogs.com/longronglang/p/8651534.html

3.下載python鏡像(如果已經安裝,則不需要安裝),我的是python3.7版本

docker search python

docker pull python 

4.將寫好的flask項目上傳服務器,FTP方式較複雜,建議使用github,本地上傳,在服務器下載

https://www.liaoxuefeng.com/wiki/896043488029600 (廖雪峯老師的教程)

在服務器下載github上的項目時,可能會報錯   fatal: Could not read from remote repository ,是因爲沒有添加SSH公鑰,下面兩篇文章可以解決。

https://baijiahao.baidu.com/s?id=1606669351803311743&wfr=spider&for=pc

https://blog.csdn.net/fenghuibian/article/details/73350890

之後再clone就可以了。

5.

創建一個Dockerfile文件

touch Dockerfile

vim Dockerfile

將下面內容寫入

FROM python:3.7
ADD . /code
WORKDIR /code
RUN apt-get update --fix-missing && apt-get install -y erlang
RUN apt-get update && apt-get install -y rabbitmq-server
RUN pip install -r requirements.txt
CMD ["nameko run hello --broker amqp://guest:guest@localhost"]
CMD ["python", "app.py"]

 

創建一個docker-compose.yml文件,要安裝docker-compose

touch docker-compose.yml

vim docker-compose.yml

將下面內容寫入文件

version: '2'
services:
  web:
    build: .
    ports:
     - "80:5000"
    volumes:
     - /root/nameko:/code

不要使用tab鍵,要用空格鍵,建議使用80端口,也可以用其他端口,注意不要佔用其他一些服務的端口

 

在nameko文件夾下使用docker-compose up命令創建鏡像,它會直接創建好容器

要等待一段時間,如果成功會有提示,失敗也會有錯誤提示

提示:

The Docker Engine version is less than the minimum required by Compose. Your current project requires a Docker Engine of version 1.10.0 or greater.


原因可能是docker版本過低,這時需要先卸載docker再安裝,

卸載:

 sudo apt-get remove docker 1.9.1


注意加版本號,不然可能不成功

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章