컨테이너를 원하는 시나리오에 맞춰서 핸들링 하기 위해서는 파이썬에서 os 패키지를 사용할 줄 알아야 한다. 개발 완료된 것을 도커허브에 한번에 등록하고, 불러와서 사용하기에 나름 편해서 많이 사용하면 좋다.
도커를 사용하면서, 아주 간단한 기능이지만 아래 두가지를 잘 다루면 아주 좋은 것 같다.
환경변수 다루기(읽기, 쓰기)
도커 명령어 (RUN, PULL, SEARCH, PUSH ...)
파이참 스크립트 안에서도 구현할 수 있다.
#환경변수 읽기
print(os.environ["MODE"])
#Timezone 읽기
print(os.environ["TZ"])
#환경변수 쓰기 & 덮어쓰기
os.environ['MODE'] = 'Training'
os.environ['MODE'] = 'Test'
# Timezone writing
os.environ['MODE'] = 'Asia/Seoul'
#이미지 당겨오기 (Hub to local)
print(os.system("docker pull ubuntu"))
#이미지 확인
print(os.system("docker images"))
#이미지 컨테이너로 실행시키기
print(os.system("docker run -it --rm ubuntu"))
#활성화된 컨테이너 확인하기
print(os.system("docker ps -a"))
#도커 허브 레파지토리에 등록된 이미지 검색
print(os.system("docker search ubuntu"))
#컨테이너 일괄 정지
print(os.system("docker stop $ (docker ps -a -q)"))
#컨테이너 일괄 삭제
print(os.system("docker rm $ (docker ps -a -q)"))
#컨테이너 일괄 삭제
print(os.system("docker rmi $ (docker images -q)"))
import os
class UbuntuRunning:
def __init__(self):
# 우분투 이미지 당겨오기
print(os.system("docker pull ubuntu"))
# 이미지 확인
print(os.system("docker images"))
# 이미지 컨테이너로 실행시키기
print(os.system("docker run -it --rm ubuntu"))
# 컨테이너 확인하기
print(os.system("docker ps -a"))
# 컨테이너 멈추기
print(os.system("docker stop -a"))
# 도커허브 이미지 확인
print(os.system("docker search ubuntu")
# 나머지는 위에서 추가해서 사용 가능
if __name__ == '__main__':
UbuntuRunning()