Microsoft MVP성태의 닷넷 이야기
개발 환경 구성: 734. Ubuntu에 docker, kubernetes (k3s) 설치 [링크 복사], [링크+제목 복사],
조회: 6601
글쓴 사람
정성태 (seongtaejeong at gmail.com)
홈페이지
첨부 파일
 

Ubuntu에 docker, kubernetes (k3s) 설치

리눅스 환경을 다루다 보니, 이제는 좀 유명한 프로그램이라면 패키지 관리자를 통해 직접 설치하기보다는 해당 제품에서 제공하는 자동 설치 스크립트를 이용하는 것이 가장 ^^ 깔끔하다는 경험을 하게 되었습니다.

docker도 마찬가지인데요, 문서에 나오는 자동 설치 스크립트를 이용하는 것이 좋습니다. ^^

$ sudo apt update && sudo apt upgrade -y
$ sudo apt install -y curl

$ curl -fsSL https://get.docker.com | sh

그다음 docker ps 등의 명령어를 sudo 없이 실행하기 위해 아래의 스크립트 정도만 더 실행해 주면 끝!

$ docker ps
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.47/containers/json": dial unix /var/run/docker.sock: connect: permission denied

$ sudo apt-get install -y uidmap

$ which dockerd-rootless-setuptool.sh
/usr/bin/dockerd-rootless-setuptool.sh

$ dockerd-rootless-setuptool.sh install

$ docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES




k3s의 경우도 마찬가지입니다. 공식 문서에서 제공하는 방법에 따라,

$ curl -sfL https://get.k3s.io | sh -

위의 명령어를 실행하면 k3s가 설치됩니다. ^^ 이후 마찬가지로 sudo 명령을 내려야만 하는 불편함을 없애기 위해 k3s.yaml 파일의 권한 변경만 해주면 됩니다.

$ kubectl get nodes
WARN[0000] Unable to read /etc/rancher/k3s/k3s.yaml, please start server with --write-kubeconfig-mode or --write-kubeconfig-group to modify kube config permissions
error: error loading config file "/etc/rancher/k3s/k3s.yaml": open /etc/rancher/k3s/k3s.yaml: permission denied

$ sudo chmod 644 /etc/rancher/k3s/k3s.yaml

$ kubectl get nodes
NAME      STATUS   ROLES                  AGE     VERSION
testnix   Ready    control-plane,master   2m44s   v1.30.6+k3s1





[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 11/20/2024]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... [31]  32  33  34  35  36  37  38  39  40  41  42  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
13198정성태12/18/202214029.NET Framework: 2080. C# - Microsoft.XmlSerializer.Generator 처리 없이 XmlSerializer 생성자를 예외 없이 사용하고 싶다면?파일 다운로드1
13197정성태12/17/202213546.NET Framework: 2079. .NET Core/5+ 환경에서 XmlSerializer 사용 시 System.IO.FileNotFoundException 예외 발생하는 경우파일 다운로드1
13196정성태12/16/202214240.NET Framework: 2078. .NET Core/5+를 위한 SGen(Microsoft.XmlSerializer.Generator) 사용법
13195정성태12/15/202214491개발 환경 구성: 655. docker - bridge 네트워크 모드에서 컨테이너 간 통신 시 --link 옵션 권장 이유
13194정성태12/14/202214291오류 유형: 833. warning C4747: Calling managed 'DllMain': Managed code may not be run under loader lock파일 다운로드1
13193정성태12/14/202214822오류 유형: 832. error C7681: two-phase name lookup is not supported for C++/CLI or C++/CX; use /Zc:twoPhase-
13192정성태12/13/202214800Linux: 55. 리눅스 - bash shell에서 실수 연산
13191정성태12/11/202216392.NET Framework: 2077. C# - 직접 만들어 보는 SynchronizationContext파일 다운로드1
13190정성태12/9/202218419.NET Framework: 2076. C# - SynchronizationContext 기본 사용법파일 다운로드1
13189정성태12/9/202217816오류 유형: 831. Visual Studio - Windows Forms 디자이너의 도구 상자에 컨트롤이 보이지 않는 문제
13188정성태12/9/202217249.NET Framework: 2075. C# - 직접 만들어 보는 TaskScheduler 실습 (SingleThreadTaskScheduler) [1]파일 다운로드1
13187정성태12/8/202216742개발 환경 구성: 654. openssl - CA로부터 인증받은 새로운 인증서를 생성하는 방법 (2)
13186정성태12/6/202214609오류 유형: 831. The framework 'Microsoft.AspNetCore.App', version '...' was not found.
13185정성태12/6/202215584개발 환경 구성: 653. Windows 환경에서의 Hello World x64 어셈블리 예제 (NASM 버전)
13184정성태12/5/202213453개발 환경 구성: 652. ml64.exe와 link.exe x64 실행 환경 구성 [1]
13183정성태12/4/202213311오류 유형: 830. MASM + CRT 함수를 사용하는 경우 발생하는 컴파일 오류 정리 [1]
13182정성태12/4/202215196Windows: 217. Windows 환경에서의 Hello World x64 어셈블리 예제 (MASM 버전)
13181정성태12/3/202213932Linux: 54. 리눅스/WSL - hello world 어셈블리 코드 x86/x64 (nasm)
13180정성태12/2/202215186.NET Framework: 2074. C# - 스택 메모리에 대한 여유 공간 확인하는 방법파일 다운로드1
13179정성태12/2/202213729Windows: 216. Windows 11 - 22H2 업데이트 이후 Terminal 대신 cmd 창이 뜨는 경우
13178정성태12/1/202214842Windows: 215. Win32 API 금지된 함수 - IsBadXxxPtr 유의 함수들이 안전하지 않은 이유파일 다운로드1
13177정성태11/30/202215425오류 유형: 829. uwsgi 설치 시 fatal error: Python.h: No such file or directory
13176정성태11/29/202212209오류 유형: 828. gunicorn - ModuleNotFoundError: No module named 'flask'
13175정성태11/29/202216858오류 유형: 827. Python - ImportError: cannot import name 'html5lib' from 'pip._vendor'
13174정성태11/28/202213340.NET Framework: 2073. C# - VMMap처럼 스택 메모리의 reserve/guard/commit 상태 출력파일 다운로드1
13173정성태11/27/202214371.NET Framework: 2072. 닷넷 응용 프로그램의 스레드 스택 크기 변경
... [31]  32  33  34  35  36  37  38  39  40  41  42  43  44  45  ...