[42Seoul] ft_services 쿠버네티스(Kubernetes) 세팅

hyeonze·2021년 4월 5일
0

42Seoul

목록 보기
7/9

Git repository

(환경 : macOS)

1.minikube 설치
brew install minikube
minikube version(버전확인)

2.VirtualBox 설치
https://www.virtualbox.org/

3.kubectl 설치
brew install kubectl
kubectl version(버전확인)

4.디렉토리 하나 만들고
minikube start

5.wordpress-k8s.yml 작성

apiVersion: apps/v1
kind: Deployment
metadata:
  name: wordpress-mysql
  labels:
    app: wordpress
spec:
  selector:
    matchLabels:
      app: wordpress
      tier: mysql
  template:
    metadata:
      labels:
        app: wordpress
        tier: mysql
    spec:
      containers:
        - image: mysql:5.6
          name: mysql
          env:
            - name: MYSQL_ROOT_PASSWORD
              value: password
          ports:
            - containerPort: 3306
              name: mysql

---
apiVersion: v1
kind: Service
metadata:
  name: wordpress-mysql
  labels:
    app: wordpress
spec:
  ports:
    - port: 3306
  selector:
    app: wordpress
    tier: mysql

---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: wordpress
  labels:
    app: wordpress
spec:
  selector:
    matchLabels:
      app: wordpress
      tier: frontend
  template:
    metadata:
      labels:
        app: wordpress
        tier: frontend
    spec:
      containers:
        - image: wordpress:5.5.3-apache
          name: wordpress
          env:
            - name: WORDPRESS_DB_HOST
              value: wordpress-mysql
            - name: WORDPRESS_DB_PASSWORD
              value: password
          ports:
            - containerPort: 80
              name: wordpress

---
apiVersion: v1
kind: Service
metadata:
  name: wordpress
  labels:
    app: wordpress
spec:
  type: NodePort
  ports:
    - port: 80
  selector:
    app: wordpress
    tier: frontend

6.wordpress-k8s.yml 적용
kubectl apply -f wordpress-k8s.yml

7.배포상태 확인
kubectl get all

워드프레스 포드가 Rnning인지 확인, service/wordpress포트 확인(30496)

8.IP확인
minikube ip

9.접속
브라우저 하나 띄우고 "ip주소":"포트" 입력(이거 몰라서 기록하려고 작성함 + 도커 꺼놓고 하는게 좋음. 워드프레스 떳다가 안떠서 컴터 포멧까지 갔는데 도커 때문임ㅠ)

10.결과

11.워드프레스 리소스 제거
kubectl delete -f wordpress-k8s.yml

profile
Advanced thinking should be put into advanced code.

0개의 댓글