도커 이미지는 컨테이너를 만들기 위해 필요한 설정이나 종속성들을 갖고 있는 소프트웨어 패키지입니다.
도커이미지는 Dockerhub에 이미 다른 사람들이 만들어 놓은 것을 이용 할 수도 있으며 직접 도커 이미지를 만들어서 사용할 수도 있고 직접 만든것을 Dockerhub에 업로드 할 수도 있습니다.
로컬서버 및 데스크톱에 도커이미지를 저장하기 위해서는 Dockerfile을 통해 새로운 이미지를 생성(docker build)하거나 도커허브로부터 이미지를 내려 받는 방법(docker pull)이 있습니다. 도커파일로 생성된 이미지는 도커 허브에 로그인을 통한 자격증명 후 업로드(docker push)를 하고 공개 및 비공개를 설정 할 수 있으며 또는 깃허브를 통해 Dockerfile 코드를 공유하여 관리하는 방법도 있습니다. 이렇게 만들어진 이미지를 실행(docker run)하면 우리가 서비스하려고 하는 애플리케이션 컨테이너가 됩니다.
Docker pull ansible
Docker build -t docker-server -f Dockerfile .
해당 명령어는 Docker 이미지를 빌드하는 데 사용됩니다.
명령어를 구성하는 각 부분을 살펴보면 다음과 같습니다:
docker build
Docker 이미지를 빌드하는 명령어입니다.
-t docker-server
생성된 이미지에 "docker-server"라는 태그를 지정합니다.
이를 통해 이미지를 구별하고, 나중에 해당 이미지를 참조할 때 사용할 수 있습니다.
-f Dockerfile
Docker 이미지를 빌드하는 데 사용할 Dockerfile을 지정합니다.
Dockerfile은 이미지를 구성하는 빌드 지시문들의 집합입니다.
도커파일의 이름을 지정하지 않으면 파일명 자체가 도커파일인 내용을 찾습니다.
.
현재 디렉토리를 root로 사용합니다.
Docker 빌드 프로세스에서는 빌드 컨텍스트의 파일들을 사용하여 이미지를 구성합니다.
따라서, 위의 명령어는 현재 디렉토리의 Dockerfile을 사용하여 "docker-server"라는 이름과 태그를 가진 Docker 이미지를 빌드합니다.
이 이미지는 나중에 docker run 명령어를 사용하여 컨테이너를 생성하고 실행할 때 참조할 수 있습니다.
Docker run -p 8080:8080 —name mytomcat docker-server:latest
해당 명령어는 docker-server:latest라는 이미지를 사용하여 myTomcat 웹 서버를 실행하는 Docker 컨테이너를 생성하는 데 사용됩니다.
docker run: Docker 컨테이너 생성 및 실행하는 명령어입니다.
-p 8080:8080
호스트의 8080 포트를 컨테이너의 8080 포트로 포트 포워딩합니다.
이를 통해 호스트에서 컨테이너의 웹 서비스에 접근할 수 있게 됩니다.
--name my-tomcat
컨테이너에 "mytomcat"이라는 이름을 지정합니다.
docker-server:latest
"docker-server"라는 이미지의 "latest" 태그를 사용하여 컨테이너를 생성합니다. "docker-server"는 이미지의 이름이고, "latest"는 이미지의 태그입니다.
따라서, 위의 명령어는 호스트의 8080 포트를 컨테이너의 8080 포트로 포트 포워딩하고, "docker-server:latest" 이미지를 사용하여 "my-tomcat"이라는 이름을 가진 Docker 컨테이너를 실행합니다. 이를 통해 호스트에서 Tomcat 웹 서버에 접근할 수 있습니다.
ssh root@localhost -p 10022
#다음 패스워드 입력
P@ssW0rd
#현재 기동되어 있는 도커컨테이너의 이름으로 터널링 접속할 경우
docker ps -a
Docker exec -it ansible-server bash