본문 바로가기
Docker

docker, minikube 기초설정, 예제

by 판매자명단 2023. 10. 4.

* ubuntu 22.04 / ip 192.168.2.10/24 / hostname ubuntu

 

sudo -i

DOCKER_USER=ubuntu
DOCKER_COMPOSE_VERSION=2.17.3

#의존성 설치
apt update -y && apt-get install -y \
apt-transport-https \
ca-certificates \
curl \
gnupg \
lsb-release

#docker가 제공하는 공개키를 신뢰하도록 설정
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --yes --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

#docker 공식 레파지토리 등록
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null

apt-get update && apt-get install -y docker-ce docker-ce-cli containerd.io
 
usermod -aG docker $DOCKER_USER

curl -L "https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

우선 ubuntu에 docker관련 패키지설치, 설정 등을 해준다

 

curl -fsSL https://packages.cloud.google.com/apt/doc/apt-key.gpg | gpg --dearmor -o /usr/share/keyrings/kubernetes-archive-keyring.gpg

echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | tee /etc/apt/sources.list.d/kubernetes.list

apt-get update && apt-get install -y kubectl

kubernetes관련 설치, 설정도 해준다

 

docker compose version
kubectl version --client -o yaml

docker와 kubernetes가 잘 설치 되었는지 확인해본다

 

curl -s "https://raw.githubusercontent.com/kubernetes-sigs/kustomize/kustomize/${KUSTOMIZE_VERSION}/hack/install_kustomize.sh"  | bash

KUSTOMIZE_VERSION=v5.1.1 # 위에 설치한 가장 최신버전을 입력

#kustomize 파일의 실행경로로 옮기기
install -o root -g root -m 0755 kustomize /usr/local/bin/kustomize

#설치 확인
kustomize version

kustomize를 설치 해준다

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
install minikube-linux-amd64 /usr/local/bin/minikube

minikube도 설치해준다

minikube start --driver docker #관리자 권한 없이 실행

#설치 확인
cat ~/.kube/config

minikube의 driver를 docker로 설정

DNS 등의 설정을 확인할 수 있다

 

#관리자 권한 없이 실행
minikube addons enable ingress
minikube addons enable dashboard
minikube addons enable istio
minikube addons enable metallb

#설치 확인
minikube addons list

minikube의 addon을 설치해준다

 

명령어 정리

# docker 명령어
docker run [store(default:docker hub)]/[image:tag(default:latest)] # 실행
# run option
-it 쉘 실행
-d background 실행
--name 이름 지정
-p 포트맵핑

docker create [imamge] # 생성
docker stop [container ID] # 정지
docker rm [container ID] # 삭제
docker ps # 실행 확인

docker stop $(docker ps -aq) # 모든 container 종료
docker rm $(docker ps -aq) # 모든 container 삭제
docker rmi $(docker images -q) # 모든 image 삭제

 

compose 예제

#/home/ubuntu/dockertest/
#docker-compose.yml                                                
version: '3'
services:
  nginx:
    image: nginx
    ports:
      - 8000:80
    volumes:
      - ./:/usr/share/nginx/html/

docker compose up -d

현재경로에 index.html의 내용을 적당히 만든 후 compose파일을 작성한다음 실행한다

 

설정파일에 지정한 포트로 접속시 잘 접속되는걸 볼 수 있다

https://docs.docker.com/get-started/08_using_compose/

 

Use Docker Compose

Using Docker Compose for multi-container applications

docs.docker.com

compose 파일을 작성해서 매번 명령어를 작성하지 않고 작성된 compose 파일을 이용해서 실행 시킬 수 있다

'Docker' 카테고리의 다른 글

docker commit  (0) 2023.10.06
docker volume  (0) 2023.10.05
docker network  (0) 2023.10.05
docker compose를 활용한 wordpress 설치  (0) 2023.10.05
docker compose 예제 실습  (1) 2023.10.05