리눅스

에혀~ 웹툰 뷰어 도커 이미지에 이어서... #2

귀신이보인다 2021. 1. 28. 08:59
728x90
반응형

웹툰 뷰어 도커 이미지에 이어서 #2

 

를 작성하면서 몇번의 수행끝에 도커 이미지를 만들었습니다.

 

정말 제가 필요로 해서 만들었습니다.

 

하지만 이미지를 만들면서 좀 고민을 했던것이 있었습니다.

 

docker run -d -p 8000:8000 --restart always -e DIR=/mnt/home/flask -e FILE=flaskweb.py --name python3 -v /mnt:/mnt -v /home:/home -v /etc/localtime:/etc/localtime:ro k45734/nicegay:pythonarm

좀 많이 길어보입니다.

중요한건 위 도커 이미지는 이미지 안에 파일은 없습니다.

로컬 파일을 도커 이미지에서 실행하는거 말곤 없는 이미지...

위 예제는 제가 FLASK 를 이용한 웹서버 관리서버입니다.

-e DIR 

-e FILE

-v 

이부분 정말 중요합니다.

-e 부분은 절대 경로~

예로 들자면 /mnt/python 경로에 test.py 를 실행시키고자 한다면

-e DIR /mnt/python

-e FILE test.py

-v /mnt/python:/mnt/python

이런식으로 수정변경하셔야 됩니다.

 

1.잘된예

-e DIR /mnt/python

2.잘못된예

-e DIR /mnt/python/

 

위의 조합만 잘 활용하시면 while 문이나 for 문을 이용하는 파이썬 코드는 자동으로 실행이 되실겁니다.

저도 이미지는 만들었으니 FLASK 관리서버를 손볼곳이 있는거 같아서...

지금 소스를 보니 아주~ 지저분 합니다 ㅋㅋ

블로그에 소개한글이 있는거 같은데 그때 만들었던거라...

수정이 완료되면 관리서버와 함께 이미지화 시켜볼까 생각중입니다.

 

추가) 2021-01-28 오전 11:36

중요한 이야기를 안하였군요.

/mnt/python 이라는 디렉토리는 도커 내부 디렉토리입니다.

-e DIR /m -v /home/piiiii:/m

이렇게 하시라는 이야기입니다.

-v 경로를 어떻게 하느냐에 따라 -e 인자가 작동을 합니다.

잘못입력이 되었다면 도커가 실행이 되었다가 중지되었다가 반복만 할뿐입니다.

예로 한가지 더 들어보겠습니다.

로컬 경로와 파일이 /volume2/python/kids.py 라고 하고 도커 내부의 경로는 /py 라고 정해보겠습니다.

 

-v /volume2/python:/py  이런식으로 경로가 지정이 됩니다.

그다음 -e DIR /py -e FILE kids.py

요런식으로 입력하시면 되는것입니다.

한번 실행후 끝나는 것이라면 반복동작은 되지 않을거 같습니다.

728x90
반응형