쓰레기 응용 프로그램을 컨테이너에 올려 보았습니다.
소개
아무래도 연말 여가의 신인 SE입니다. 몇 달 전에 너무 여유롭게 장고 응용 프로그램을 공부로 만들었는데, 그것을 기사로 만들기 위해서는 재료가 너무 많다고 생각했기 때문에 Docker를 사용하여 컨테이너를 타고 움직여 보았습니다. 만든 응용 프로그램이 생기는 것은 자각하고 있으므로 만지지 마십시오!
환경
장고 애플리케이션 정보
먼저 응용 프로그램에 대해 설명합니다. 이번 제목으로 사용하는 것은 이전에 내가 만든 구독 서비스 관리 응용 프로그램입니다. 이용하고 있는 서비스와 월액 금액을 등록하면 그 시점부터 현재까지의 누계 과금액을 계산할 수 있게 되어 있습니다. (할 수 있는 것은 그것뿐입니다...)
얼마나 쓰레기인지 보고 싶어! 라고 하는 분은 이하의 링크로부터 봐 주세요. README.md라든지는 쓰지 않기 때문에 열심히 움직여! 웃음
장고 응용
이 기사에서는 이미 작성된 Django 애플리케이션을 컨테이너 환경에 이식한다고 합니다.
컨테이너 구성
컨테이너의 구성은 다음과 같습니다. AP용과 DB용으로 2개의 컨테이너를 작성합니다.
디렉토리 구성
디렉토리 구성은 다음과 같습니다.
.
├── Dockerfile_db
├── Dockerfile_django
├── README.md
├── app
│ ├── Pipfile
│ ├── Pipfile.lock
│ ├── env
│ │ ├── bin
│ │ ├── include
│ │ ├── lib
│ │ ├── pyvenv.cfg
│ │ └── src
│ ├── manage.py
│ ├── management
│ │ ├── __init__.py
│ │ ├── __init__.pyc
│ │ ├── __pycache__
│ │ ├── admin.py
│ │ ├── apps.py
│ │ ├── apps.pyc
│ │ ├── forms.py
│ │ ├── migrations
│ │ ├── models.py
│ │ ├── models.pyc
│ │ ├── templates
│ │ ├── tests.py
│ │ ├── urls.py
│ │ └── views.py
│ ├── static
│ │ ├── addService_style.css
│ │ ├── detail_style.css
│ │ ├── header_style.css
│ │ ├── login_style.css
│ │ ├── logout_style.css
│ │ ├── management_style.css
│ │ ├── password_change_done_style.css
│ │ ├── password_change_style.css
│ │ └── signup_style.css
│ ├── subscManagement
│ │ ├── __init__.py
│ │ ├── __init__.pyc
│ │ ├── __pycache__
│ │ ├── settings.py
│ │ ├── settings.pyc
│ │ ├── urls.py
│ │ └── wsgi.py
│ └── templates
│ └── registration
├── docker-compose.yml
└── requirements.txt
AP 용 컨테이너 Dockerfile
AP용 컨테이너를 만들기 위한 Dockerfile을 만듭니다.
Dockerfile_djangoFROM python:3
ENV LANG en_US.utf8
WORKDIR /app
ADD requirements.txt /app
RUN apt-get update
RUN pip install -r requirements.txt
requirements.txtDjango==2.2.5
mysqlclient==1.4.4
이번은 MySQL에의 접속 드라이버로서 mysqlclient를 사용하고 있습니다만, 후술의 MySQL 이미지의 버젼(Tag)이 mysql:8이라고 잘 동작하지 않았습니다. 이번에는 다운 그레이드하고 mysql : 5.7을 사용하고 있습니다.
DB 용 컨테이너 Dockerfile
DB용 컨테이너를 작성하기 위한 Dockerfile을 작성합니다.
Dockerfile_dbFROM mysql:5.7
RUN apt-get clean && apt-get update && apt-get install -y locales locales-all
RUN locale-gen ja_JP.UTF-8
ENV LANG ja_JP.UTF-8
ENV LANGUAGE ja_JP:en
ENV LC_ALL ja_JP.UTF-8
RUN ln -sf /usr/share/zoneinfo/Japan /etc/localtime
문자 코드 설정은 적합합니다.
docker-compose.yml 만들기
docker-compose.yml을 만듭니다.
docker-compose.ymlversion: '3'
services:
db:
build:
context: .
dockerfile: Dockerfile_db
restart: always
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_USER: apuser
MYSQL_PASSWORD: password
MYSQL_DATABASE: subscManagement
TZ: "Asia/Tokyo"
BIND-ADDRESS: 0.0.0.0
ports:
- 3306:3306
volumes:
- db_data:/var/lib/mysql
tty: true
django:
build:
context: .
dockerfile: Dockerfile_django
command: python3 manage.py runserver 0.0.0.0:8000
ports:
- "8000:8000"
volumes:
- ./app:/app
tty: true
depends_on:
- db
volumes:
db-data:
컨테이너를 삭제해도 DB내의 데이터가 사라지지 않도록 volumes:로 볼륨을 작성하고 있습니다.
컨테이너 실행
다음 명령으로 docker-compose.yml을 기반으로 컨테이너를 실행합니다.
$ docker-compose up --build -d
컨테이너가 제대로 움직이고 있는지 확인!
$ docker-compose ps
Name Command State Ports
-----------------------------------------------------------------------------------------------------
subscmanagement_db_1 docker-entrypoint.sh mysqld Up 0.0.0.0:3306->3306/tcp, 33060/tcp
subscmanagement_django_1 python3 manage.py runserve ... Up 0.0.0.0:8000->8000/tcp
첫 번째 런타임에만 DB에 테이블을 만들려면 Django 측 컨테이너 내에서 다음 명령을 실행해야 합니다.
# "docker exec -it コンテナ名 /bin/bash"等でコンテナ内に入ってから実行
$ python manage.py migrate
웹페이지 방문
브라우저에서 웹 페이지에 액세스할 수 있는지 확인합니다.
h tp://0.0.0.0:8000/아코응 ts/㎉/
에 액세스!
액세스에 성공했습니다! 계정을 만들고 로그인하고 데이터를 입력하면 제대로 저장되었으므로 DB에 저장 잘 작동하는 것 같습니다!
덧붙여서 한번 컨테이너를 삭제하고 나서 다시 만들어도 데이터는 남아 있었기 때문에, 영속적인 데이터의 보존에도 성공했습니다!
마지막으로
이번에 처음 컨테이너를 만졌습니다만 컨테이너간(Django측에서 MySQL측)의 접속에 고생했습니다. DB에 연결 드라이버와 MySQL 이미지 버전 (Tag)의 조합에 따라 잘 연결할 수없는 것 같습니다. 이것은 MySQL:8에서 도입된 새로운 인증 기능에 접속 드라이버가 대응하고 있지 않는 경우가 있기 때문에 일어나고 있는 것 같습니다. 컨테이너 2개라도 상당히 고생했기 때문에 복잡한 시스템의 컨테이너화는 상당히 어려울 것 같다. . .
Reference
이 문제에 관하여(쓰레기 응용 프로그램을 컨테이너에 올려 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kanazawa1226/items/b168d54396f787765359
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
컨테이너의 구성은 다음과 같습니다. AP용과 DB용으로 2개의 컨테이너를 작성합니다.
디렉토리 구성
디렉토리 구성은 다음과 같습니다.
.
├── Dockerfile_db
├── Dockerfile_django
├── README.md
├── app
│ ├── Pipfile
│ ├── Pipfile.lock
│ ├── env
│ │ ├── bin
│ │ ├── include
│ │ ├── lib
│ │ ├── pyvenv.cfg
│ │ └── src
│ ├── manage.py
│ ├── management
│ │ ├── __init__.py
│ │ ├── __init__.pyc
│ │ ├── __pycache__
│ │ ├── admin.py
│ │ ├── apps.py
│ │ ├── apps.pyc
│ │ ├── forms.py
│ │ ├── migrations
│ │ ├── models.py
│ │ ├── models.pyc
│ │ ├── templates
│ │ ├── tests.py
│ │ ├── urls.py
│ │ └── views.py
│ ├── static
│ │ ├── addService_style.css
│ │ ├── detail_style.css
│ │ ├── header_style.css
│ │ ├── login_style.css
│ │ ├── logout_style.css
│ │ ├── management_style.css
│ │ ├── password_change_done_style.css
│ │ ├── password_change_style.css
│ │ └── signup_style.css
│ ├── subscManagement
│ │ ├── __init__.py
│ │ ├── __init__.pyc
│ │ ├── __pycache__
│ │ ├── settings.py
│ │ ├── settings.pyc
│ │ ├── urls.py
│ │ └── wsgi.py
│ └── templates
│ └── registration
├── docker-compose.yml
└── requirements.txt
AP 용 컨테이너 Dockerfile
AP용 컨테이너를 만들기 위한 Dockerfile을 만듭니다.
Dockerfile_djangoFROM python:3
ENV LANG en_US.utf8
WORKDIR /app
ADD requirements.txt /app
RUN apt-get update
RUN pip install -r requirements.txt
requirements.txtDjango==2.2.5
mysqlclient==1.4.4
이번은 MySQL에의 접속 드라이버로서 mysqlclient를 사용하고 있습니다만, 후술의 MySQL 이미지의 버젼(Tag)이 mysql:8이라고 잘 동작하지 않았습니다. 이번에는 다운 그레이드하고 mysql : 5.7을 사용하고 있습니다.
DB 용 컨테이너 Dockerfile
DB용 컨테이너를 작성하기 위한 Dockerfile을 작성합니다.
Dockerfile_dbFROM mysql:5.7
RUN apt-get clean && apt-get update && apt-get install -y locales locales-all
RUN locale-gen ja_JP.UTF-8
ENV LANG ja_JP.UTF-8
ENV LANGUAGE ja_JP:en
ENV LC_ALL ja_JP.UTF-8
RUN ln -sf /usr/share/zoneinfo/Japan /etc/localtime
문자 코드 설정은 적합합니다.
docker-compose.yml 만들기
docker-compose.yml을 만듭니다.
docker-compose.ymlversion: '3'
services:
db:
build:
context: .
dockerfile: Dockerfile_db
restart: always
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_USER: apuser
MYSQL_PASSWORD: password
MYSQL_DATABASE: subscManagement
TZ: "Asia/Tokyo"
BIND-ADDRESS: 0.0.0.0
ports:
- 3306:3306
volumes:
- db_data:/var/lib/mysql
tty: true
django:
build:
context: .
dockerfile: Dockerfile_django
command: python3 manage.py runserver 0.0.0.0:8000
ports:
- "8000:8000"
volumes:
- ./app:/app
tty: true
depends_on:
- db
volumes:
db-data:
컨테이너를 삭제해도 DB내의 데이터가 사라지지 않도록 volumes:로 볼륨을 작성하고 있습니다.
컨테이너 실행
다음 명령으로 docker-compose.yml을 기반으로 컨테이너를 실행합니다.
$ docker-compose up --build -d
컨테이너가 제대로 움직이고 있는지 확인!
$ docker-compose ps
Name Command State Ports
-----------------------------------------------------------------------------------------------------
subscmanagement_db_1 docker-entrypoint.sh mysqld Up 0.0.0.0:3306->3306/tcp, 33060/tcp
subscmanagement_django_1 python3 manage.py runserve ... Up 0.0.0.0:8000->8000/tcp
첫 번째 런타임에만 DB에 테이블을 만들려면 Django 측 컨테이너 내에서 다음 명령을 실행해야 합니다.
# "docker exec -it コンテナ名 /bin/bash"等でコンテナ内に入ってから実行
$ python manage.py migrate
웹페이지 방문
브라우저에서 웹 페이지에 액세스할 수 있는지 확인합니다.
h tp://0.0.0.0:8000/아코응 ts/㎉/
에 액세스!
액세스에 성공했습니다! 계정을 만들고 로그인하고 데이터를 입력하면 제대로 저장되었으므로 DB에 저장 잘 작동하는 것 같습니다!
덧붙여서 한번 컨테이너를 삭제하고 나서 다시 만들어도 데이터는 남아 있었기 때문에, 영속적인 데이터의 보존에도 성공했습니다!
마지막으로
이번에 처음 컨테이너를 만졌습니다만 컨테이너간(Django측에서 MySQL측)의 접속에 고생했습니다. DB에 연결 드라이버와 MySQL 이미지 버전 (Tag)의 조합에 따라 잘 연결할 수없는 것 같습니다. 이것은 MySQL:8에서 도입된 새로운 인증 기능에 접속 드라이버가 대응하고 있지 않는 경우가 있기 때문에 일어나고 있는 것 같습니다. 컨테이너 2개라도 상당히 고생했기 때문에 복잡한 시스템의 컨테이너화는 상당히 어려울 것 같다. . .
Reference
이 문제에 관하여(쓰레기 응용 프로그램을 컨테이너에 올려 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kanazawa1226/items/b168d54396f787765359
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
.
├── Dockerfile_db
├── Dockerfile_django
├── README.md
├── app
│ ├── Pipfile
│ ├── Pipfile.lock
│ ├── env
│ │ ├── bin
│ │ ├── include
│ │ ├── lib
│ │ ├── pyvenv.cfg
│ │ └── src
│ ├── manage.py
│ ├── management
│ │ ├── __init__.py
│ │ ├── __init__.pyc
│ │ ├── __pycache__
│ │ ├── admin.py
│ │ ├── apps.py
│ │ ├── apps.pyc
│ │ ├── forms.py
│ │ ├── migrations
│ │ ├── models.py
│ │ ├── models.pyc
│ │ ├── templates
│ │ ├── tests.py
│ │ ├── urls.py
│ │ └── views.py
│ ├── static
│ │ ├── addService_style.css
│ │ ├── detail_style.css
│ │ ├── header_style.css
│ │ ├── login_style.css
│ │ ├── logout_style.css
│ │ ├── management_style.css
│ │ ├── password_change_done_style.css
│ │ ├── password_change_style.css
│ │ └── signup_style.css
│ ├── subscManagement
│ │ ├── __init__.py
│ │ ├── __init__.pyc
│ │ ├── __pycache__
│ │ ├── settings.py
│ │ ├── settings.pyc
│ │ ├── urls.py
│ │ └── wsgi.py
│ └── templates
│ └── registration
├── docker-compose.yml
└── requirements.txt
AP용 컨테이너를 만들기 위한 Dockerfile을 만듭니다.
Dockerfile_django
FROM python:3
ENV LANG en_US.utf8
WORKDIR /app
ADD requirements.txt /app
RUN apt-get update
RUN pip install -r requirements.txt
requirements.txt
Django==2.2.5
mysqlclient==1.4.4
이번은 MySQL에의 접속 드라이버로서 mysqlclient를 사용하고 있습니다만, 후술의 MySQL 이미지의 버젼(Tag)이 mysql:8이라고 잘 동작하지 않았습니다. 이번에는 다운 그레이드하고 mysql : 5.7을 사용하고 있습니다.
DB 용 컨테이너 Dockerfile
DB용 컨테이너를 작성하기 위한 Dockerfile을 작성합니다.
Dockerfile_dbFROM mysql:5.7
RUN apt-get clean && apt-get update && apt-get install -y locales locales-all
RUN locale-gen ja_JP.UTF-8
ENV LANG ja_JP.UTF-8
ENV LANGUAGE ja_JP:en
ENV LC_ALL ja_JP.UTF-8
RUN ln -sf /usr/share/zoneinfo/Japan /etc/localtime
문자 코드 설정은 적합합니다.
docker-compose.yml 만들기
docker-compose.yml을 만듭니다.
docker-compose.ymlversion: '3'
services:
db:
build:
context: .
dockerfile: Dockerfile_db
restart: always
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_USER: apuser
MYSQL_PASSWORD: password
MYSQL_DATABASE: subscManagement
TZ: "Asia/Tokyo"
BIND-ADDRESS: 0.0.0.0
ports:
- 3306:3306
volumes:
- db_data:/var/lib/mysql
tty: true
django:
build:
context: .
dockerfile: Dockerfile_django
command: python3 manage.py runserver 0.0.0.0:8000
ports:
- "8000:8000"
volumes:
- ./app:/app
tty: true
depends_on:
- db
volumes:
db-data:
컨테이너를 삭제해도 DB내의 데이터가 사라지지 않도록 volumes:로 볼륨을 작성하고 있습니다.
컨테이너 실행
다음 명령으로 docker-compose.yml을 기반으로 컨테이너를 실행합니다.
$ docker-compose up --build -d
컨테이너가 제대로 움직이고 있는지 확인!
$ docker-compose ps
Name Command State Ports
-----------------------------------------------------------------------------------------------------
subscmanagement_db_1 docker-entrypoint.sh mysqld Up 0.0.0.0:3306->3306/tcp, 33060/tcp
subscmanagement_django_1 python3 manage.py runserve ... Up 0.0.0.0:8000->8000/tcp
첫 번째 런타임에만 DB에 테이블을 만들려면 Django 측 컨테이너 내에서 다음 명령을 실행해야 합니다.
# "docker exec -it コンテナ名 /bin/bash"等でコンテナ内に入ってから実行
$ python manage.py migrate
웹페이지 방문
브라우저에서 웹 페이지에 액세스할 수 있는지 확인합니다.
h tp://0.0.0.0:8000/아코응 ts/㎉/
에 액세스!
액세스에 성공했습니다! 계정을 만들고 로그인하고 데이터를 입력하면 제대로 저장되었으므로 DB에 저장 잘 작동하는 것 같습니다!
덧붙여서 한번 컨테이너를 삭제하고 나서 다시 만들어도 데이터는 남아 있었기 때문에, 영속적인 데이터의 보존에도 성공했습니다!
마지막으로
이번에 처음 컨테이너를 만졌습니다만 컨테이너간(Django측에서 MySQL측)의 접속에 고생했습니다. DB에 연결 드라이버와 MySQL 이미지 버전 (Tag)의 조합에 따라 잘 연결할 수없는 것 같습니다. 이것은 MySQL:8에서 도입된 새로운 인증 기능에 접속 드라이버가 대응하고 있지 않는 경우가 있기 때문에 일어나고 있는 것 같습니다. 컨테이너 2개라도 상당히 고생했기 때문에 복잡한 시스템의 컨테이너화는 상당히 어려울 것 같다. . .
Reference
이 문제에 관하여(쓰레기 응용 프로그램을 컨테이너에 올려 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kanazawa1226/items/b168d54396f787765359
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
FROM mysql:5.7
RUN apt-get clean && apt-get update && apt-get install -y locales locales-all
RUN locale-gen ja_JP.UTF-8
ENV LANG ja_JP.UTF-8
ENV LANGUAGE ja_JP:en
ENV LC_ALL ja_JP.UTF-8
RUN ln -sf /usr/share/zoneinfo/Japan /etc/localtime
docker-compose.yml을 만듭니다.
docker-compose.yml
version: '3'
services:
db:
build:
context: .
dockerfile: Dockerfile_db
restart: always
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_USER: apuser
MYSQL_PASSWORD: password
MYSQL_DATABASE: subscManagement
TZ: "Asia/Tokyo"
BIND-ADDRESS: 0.0.0.0
ports:
- 3306:3306
volumes:
- db_data:/var/lib/mysql
tty: true
django:
build:
context: .
dockerfile: Dockerfile_django
command: python3 manage.py runserver 0.0.0.0:8000
ports:
- "8000:8000"
volumes:
- ./app:/app
tty: true
depends_on:
- db
volumes:
db-data:
컨테이너를 삭제해도 DB내의 데이터가 사라지지 않도록 volumes:로 볼륨을 작성하고 있습니다.
컨테이너 실행
다음 명령으로 docker-compose.yml을 기반으로 컨테이너를 실행합니다.
$ docker-compose up --build -d
컨테이너가 제대로 움직이고 있는지 확인!
$ docker-compose ps
Name Command State Ports
-----------------------------------------------------------------------------------------------------
subscmanagement_db_1 docker-entrypoint.sh mysqld Up 0.0.0.0:3306->3306/tcp, 33060/tcp
subscmanagement_django_1 python3 manage.py runserve ... Up 0.0.0.0:8000->8000/tcp
첫 번째 런타임에만 DB에 테이블을 만들려면 Django 측 컨테이너 내에서 다음 명령을 실행해야 합니다.
# "docker exec -it コンテナ名 /bin/bash"等でコンテナ内に入ってから実行
$ python manage.py migrate
웹페이지 방문
브라우저에서 웹 페이지에 액세스할 수 있는지 확인합니다.
h tp://0.0.0.0:8000/아코응 ts/㎉/
에 액세스!
액세스에 성공했습니다! 계정을 만들고 로그인하고 데이터를 입력하면 제대로 저장되었으므로 DB에 저장 잘 작동하는 것 같습니다!
덧붙여서 한번 컨테이너를 삭제하고 나서 다시 만들어도 데이터는 남아 있었기 때문에, 영속적인 데이터의 보존에도 성공했습니다!
마지막으로
이번에 처음 컨테이너를 만졌습니다만 컨테이너간(Django측에서 MySQL측)의 접속에 고생했습니다. DB에 연결 드라이버와 MySQL 이미지 버전 (Tag)의 조합에 따라 잘 연결할 수없는 것 같습니다. 이것은 MySQL:8에서 도입된 새로운 인증 기능에 접속 드라이버가 대응하고 있지 않는 경우가 있기 때문에 일어나고 있는 것 같습니다. 컨테이너 2개라도 상당히 고생했기 때문에 복잡한 시스템의 컨테이너화는 상당히 어려울 것 같다. . .
Reference
이 문제에 관하여(쓰레기 응용 프로그램을 컨테이너에 올려 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kanazawa1226/items/b168d54396f787765359
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ docker-compose up --build -d
$ docker-compose ps
Name Command State Ports
-----------------------------------------------------------------------------------------------------
subscmanagement_db_1 docker-entrypoint.sh mysqld Up 0.0.0.0:3306->3306/tcp, 33060/tcp
subscmanagement_django_1 python3 manage.py runserve ... Up 0.0.0.0:8000->8000/tcp
# "docker exec -it コンテナ名 /bin/bash"等でコンテナ内に入ってから実行
$ python manage.py migrate
브라우저에서 웹 페이지에 액세스할 수 있는지 확인합니다.
h tp://0.0.0.0:8000/아코응 ts/㎉/
에 액세스!
액세스에 성공했습니다! 계정을 만들고 로그인하고 데이터를 입력하면 제대로 저장되었으므로 DB에 저장 잘 작동하는 것 같습니다!
덧붙여서 한번 컨테이너를 삭제하고 나서 다시 만들어도 데이터는 남아 있었기 때문에, 영속적인 데이터의 보존에도 성공했습니다!
마지막으로
이번에 처음 컨테이너를 만졌습니다만 컨테이너간(Django측에서 MySQL측)의 접속에 고생했습니다. DB에 연결 드라이버와 MySQL 이미지 버전 (Tag)의 조합에 따라 잘 연결할 수없는 것 같습니다. 이것은 MySQL:8에서 도입된 새로운 인증 기능에 접속 드라이버가 대응하고 있지 않는 경우가 있기 때문에 일어나고 있는 것 같습니다. 컨테이너 2개라도 상당히 고생했기 때문에 복잡한 시스템의 컨테이너화는 상당히 어려울 것 같다. . .
Reference
이 문제에 관하여(쓰레기 응용 프로그램을 컨테이너에 올려 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kanazawa1226/items/b168d54396f787765359
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(쓰레기 응용 프로그램을 컨테이너에 올려 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kanazawa1226/items/b168d54396f787765359텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)