본문 바로가기

Ankiwoong

(1841)
[Docker][k8s]kubespray - kubernetes 설치 구성 관리 도구인 앤서블(ansible)을 이용해서 멀티노드 쿠버네티스 클러스터를 구축 master CentOS 7.6 192.168.111.100 node1 CentOS 7.6 192.168.111.101 node2 CentOS 7.6 192.168.111.102 1. swap 메모리 비활성화 # swapoff -a 2. ip forward 설정 및 확인 설정 확인> # cat /proc/sys/net/ipv4/ip_forward 설정 방법> # echo 1 > /proc/sys/net/ipv4/ip_forward 3. 방화벽 해제 및 selinux 해제 # systemctl stop firewalld # systemctl..
[Docker][k8s]minikube - helloworld minikube : 하나의 노드로 구성된 간단한 클러스터를 배포하는 가벼운 쿠버네티스 1. 사용자 생성(minikube) 및 설정 작 [root@localhost ~]# useradd minikube [root@localhost ~]# passwd --stdin minikube [root@localhost ~]# echo "minikube ALL=(ALL) ALL" >> /etc/sudoers.d/minikube [root@localhost ~]# sudo usermod -aG docker minikube && newgrp docker 2. minikube 설치 [minikube@localhost ~]$ curl -LO https://storage.googleapis.com/minikube/release..
[Docker]빌더 패턴 빌더 패턴이란 복합 객체의 생성 과정과 표현 방법을 분리하여 동일한 생성 절차에서 서로 다른 표현 결과를 만들 수 있게 하는 패턴이다. 경량화에 사용 한다. 1. helloworld.go 파일을 빌드 후 실행하는 컨테이너 이미지 생성 [root@localhost test]# mkdir build-pattern [root@localhost test]# [root@localhost test]# cd build-pattern/ [root@localhost build-pattern]# [root@localhost build-pattern]# vi helloworld.go package main import "fmt" func main() { fmt.Println("Hello World") } [root@loca..
[Docker]CMD vs ENTRYPOINT - CMD 1. Dockerfile 작성 2. 이미지 생성 및 확인 # docker image build -t cmd-img -f Dockerfile-cmd . # docker image ls 3. 컨테이너 생성 - Dockerfile-cmd 파일의 CMD 항목의 실행 결과 - container run 명령에서 전달한 명령어가 실행된 결과 - container run 명령에서 전달한 명령어가 Dockerfile의 CMD 항목의 명령어를 덮어씀 - ENTRYPOINT 1. Dockerfile 작성 2. 이미지 생성 및 확인 # docker image build -t entrypoint-img -f Dockerfile-entrypoint . # docker image ls 3. 컨테이너 생성 - Docker..
[Docker]container 접속 1. 컨테이너 실행 # docker container run -itd --rm --name myserver ubuntu 2. 컨테이너 확인 # docker container ls 3. docker exec : 특정 컨테이너 환경에서 명령어를 실행하거나, 컨테이너의 내부 환경에 대해서 알아보거나 디버깅 # docker container exec -it myserver /bin/bash 4. attach로 접속
[Docker]docker container run 1. attach 모드 컨테이너 실행 attach : 실행되고 있는 컨테이너에 접속 2. attach 모드 종료 3. detach 모드 컨테이너 실행 detach : 실행되고 있는 컨테이너에 새로운 명령을 할 수 있는 명령어 4. attach 모드에서 detach 모드로 전환 ctrl + p + q 입력 하여 전환 가
[Docker]Dockerfile 을 이용한 도커 이미지 빌드 1. docker 폴더 생성 # mkdir docker 2. main.go 작성 package main import ( "fmt" "log" "net/http" ) func main() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { log.Println("received request") fmt.Fprintf(w, "Hello Docker2!!\n") }) log.Println("start server") server := &http.Server{Addr: ":8080"} if err := server.ListenAndServe(); err != nil { log.Println(err) } } 3. Dockerfile 생성 #..
[Docker]컨테이너 이름 부여 생성 1. myhello 컨테이너 생성 # docker container run --name myhello ubuntu /bin/echo "Hello World" 2. 컨테이너 확인 # docker container ls -a - 컨테이너 이름은 중복하여 생성 불가 3. 컨테이너 종료 -> 해당 컨테이너 자동 삭제 # docker container run --name myhello --rm ubuntu /bin/echo "Hello World" - 컨테이너 이름은 중복으로 사용이 불가 했으나 위에 명령어를 입력하면 가능