git pull 해서 github repository를 pull 한 다음 runserver.py 실행으로 서버 동작
sudo apt update
sudo mkdir app
cd app
sudo mkdir step1
cd step1
sudo apt install git
sudo git clone https://github.com/ArchiveElder/ae_FlaskServer.git
sudo apt install python3-pip
sudo pip3 install flask flask_cors
sudo pip3 install tensorflow
sudo pip3 install keras
sudo pip3 install pymysql
sudo pip3 install numpy
sudo pip3 install pandas
sudo chmod 777 ae_F*
sudo vim deploy.sh (밑의 배포스크립트 작성)
sudo chmod +x deploy.sh
cd ae_F*
sudo python3 runserver.py
--- *tensorflow 에러 --
#!/bin/bash
REPOSITORY=/home/ubuntu/app/step1
PROJECT_NAME=ae_FlaskServer
cd $REPOSITORY/$PROJECT_NAME/
echo ">git pull"
git pull
echo ">현재 구동중인 애플리케이션 pid 확인"
CURRENT_PID=$(pgrep -f runserver.py)
echo "현재 구동중인 어플리케이션 pid : $CURRENT_PID"
if [ -z "$CURRENT_PID" ]; then
echo "> 현재 구동중인 애플리케이션이 없으므로 종료하지 않습니다."
else
echo "> kill -9 $CURRENT_PID"
sudo kill -9 $CURRENT_PID
sleep 5
fi
echo ">새 어플리케이션 서버 실행"
sudo nohup python3 runserver.py 2>&1 &
역시 우려하던 tensorflow import 에러가 나옴
pip uninstall tensorflow
pip install tensorflow
sudo apt install python3-venv
python3 -m venv scrap
source /home/ubuntu/app/step1/ae_FlaskServer/scrap/bin/activate
(venv)
pip install --upgrade pip
pip install --upgrade TensorFlow
deactivate
cd ..
sudo python3 runserver.py
sudo python3 -m pip install tensorflow
아무래도 계속 설치하다가 kill 당하는게 메모리 부족인거같아서
pip uninstall tensorflow
pip --no-cache-dir install tensorflow
우앙 깔리는거같애
근데 안됨
source /home/ubuntu/app/step1/ae_FlaskServer/scrap/bin/activate
pip uninstall tensorflow
(venv)
pip3 --no-cache-dir install tensorflow
pip uninstall tensorflow
pip --no-cache-dir install tensorflow-cpu
https://bobbyhadz.com/blog/python-no-module-named-tensorflow
pip uninstall tensorflow
pip3 install tensorflow --no-cache-dir
이전 venv 지우고
sudo rm -rf scrap
sudo apt install python3-venv
sudo python3 -m venv .venv
source .venv/bin/activate
pip3 install tensorflow --no-cache-dir
중간에 폴더도 다시 지우고 git clone 다시 받아보기도함
pip list 하면 venv 와 아닌 곳 모두 있음 (2.11버전)
버전 문제인가? 싶어서
일단 venv 와 그 바깥 모두 uninstall 해주고
https://www.tensorflow.org/install/pip?hl=ko
내거에 맞는 (python3.8) 패키지를 URL로 설치
(venv)
pip3 install https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.11.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
ERROR: Could not install packages due to an EnvironmentError: [Errno 13] Permission denied: '/home/ubuntu/app/step1/ae_FlaskServer/.venv/lib/python3.8/site-packages/typing_extensions.py' Consider using the -user
option or check the permissions.
에러가 떠서
pip3 install https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.11.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl --user
ERROR: Can not perform a '--user' install. User site-packages are not visible in this virtualenv.
에러뜸
venv 밖에
pip3 install https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.11.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl --no-cache-dir
경고뜸
toco and toco_from_protos are installed in '/home/ubuntu/.local/bin' which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
sudo vim ~/.bashrc
(아래 내용 추가)
export PATH=$PATH:/home/ubuntu/.local/bin
그리고 다시 pip3 install https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.11.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl --no-cache-dir
그리고 서버 띄우면 안됨
source .venv/bin/activate
sudo pip3 install https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.11.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl --no-cache-dir
tensorflow 말고 config 가 없다는 에러가 나옴!!!
sudo pip3 install config 해주고
우앗!! 서버가 동작한다.
이제 venv에서 실행하는게 아니라 배포스크립트 deploy.sh 를 써서 해도?
동작한다!