>  기사  >  운영 및 유지보수  >  Docker에 애플리케이션을 배포할 수 있나요?

Docker에 애플리케이션을 배포할 수 있나요?

WBOY
WBOY원래의
2022-08-15 17:59:022032검색

애플리케이션은 Docker에 배포할 수 있습니다. 배포 방법: 1. "docker search..."를 사용하여 지정된 애플리케이션 이미지를 검색합니다. 2. "docker pull..."을 사용하여 지정된 애플리케이션 이미지를 가져옵니다. 3. "mkdir" 및 cd 명령을 사용하여 4. "docker run..."을 사용하여 컨테이너를 만듭니다.

Docker에 애플리케이션을 배포할 수 있나요?

이 튜토리얼의 운영 환경: linux7.3 시스템, docker 버전 19.03, Dell G3 컴퓨터.

애플리케이션은 docker

애플리케이션의 컨테이너화된 배포에 배포될 수 있습니다. 일반적으로 개발 워크플로에는 다음 사항이 포함됩니다.

1. 먼저 Docker 이미지를 생성하고 애플리케이션의 각 구성 요소에 대한 단일 컨테이너를 생성 및 테스트합니다.

2. 컨테이너와 지원 인프라를 Docker 스택 파일 또는 Kubernetes YAML을 사용하여 구현할 수 있는 완전한 애플리케이션으로 조립합니다.

3. 완전한 컨테이너화된 애플리케이션을 테스트, 공유 및 배포합니다.

이 문서에서는 이 워크플로의 1단계인 기존 컨테이너를 기반으로 이미지를 만드는 데 중점을 둘 것입니다. Docker 이미지는 컨테이너화된 프로세스가 실행될 개인 파일 시스템을 캡처합니다. 애플리케이션을 실행하는 데 필요한 것이 정확히 포함된 이미지를 생성해야 합니다.

컨테이너화된 개발 환경은 아래에서 설명할 이미지 빌드 방법을 배우면 기존 개발 환경보다 설정하기가 더 쉽습니다. 이는 컨테이너화된 개발 환경이 Docker 이미지 내에서 애플리케이션에 필요한 모든 종속성을 격리하기 때문입니다. Docker를 제외하고 개발 머신에 아무것도 설치할 필요가 없습니다(즉, 개발 환경의 배포는 Docker 이미지에만 의존합니다). 이렇게 하면 개발 시스템의 환경을 변경하지 않고도 다양한 스택에 대한 애플리케이션을 쉽게 개발할 수 있습니다.

예는 다음과 같습니다:

MySQL 배포

#搜索MySQL镜像
docker search mysql
#拉取MySQL镜像
docker pull mysql:5.6
#创建挂载目录
mkdir ~/mysql
cd ~/mysql
#创建容器
docker run -id \
-p 3306:3306 \
--name=c_mysql \
-v $PWD/conf:/etc/mysql/conf.d \
-v $PWD/data:/var/lib/mysql \
-v $PWD/logs:/logs \
-e MYSQL_ROOT_PASSWORD=123456 \
mysql:5.6
#进入容器
docker exec -it c_mysql
#尝试Navicat连接
...

Tomcat 배포

#搜索Tomcat镜像
docker search tomcat
#拉取Tomcat镜像
docker pull tomcat
#创建挂载目录
mkdir ~/tomcat
cd ~/tomcat
#创建容器
docker run -id \
-p 8080:8080 \
--name=c_tomcat \
-v $PWD:/usr/local/tomcat/webapps \
tomcat

Nginx 배포

#搜索Nginx镜像
docker search nginx
#拉取Nginx镜像
docker pull nginx
#创建挂载目录
mkdir ~/nginx
cd ~/nginx
#创建容器
docker run -id \
-p 80:80 \
--name=c_nginx \
-v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf \
-v $PWD/logs:/var/log/nginx \
-v $PWD/html:/usr/share/nginx/html \
nginx

추천 학습: "docker 비디오 튜토리얼"

위 내용은 Docker에 애플리케이션을 배포할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.