인프런 커뮤니티 질문&답변

Haksung Kim님의 프로필 이미지

작성한 질문수

실습으로 배우는 프로메테우스 - {{ x86-64, arm64 }}

[6.3] create-certificate.sh, 5.docker-image-pullpush-to-harbor.sh 실행시 에러발생건

해결된 질문

24.07.18 20:08 작성

·

174

0

안녕하세요, 강사님.

 

6.3을 실습하는 과정에서 표제에 적은 두 스크립트를 실행 할 때 동일한 이슈가 발생하여 문의드립니다.

 

일단 create-certificate.sh 실행 시 cp-k8s 노드에 sshpass 가 없어서 정상적으로 스크립트가 진행되지 못했습니다. (사실 이 부분을 제대로 인지하지 못하고 강의 뒷부분까지 진행하였습니다)

 

그다음 http://5.docker-image-pullpush-to-harbor.sh 실행 할 때는, docker가 없어서 docker login부터 push 과정까지 전부 진행이 안되더라고요.

root@cp-k8s:~/_Lecture_prom_learning.kit/ch6/6.3# ./5.docker-image-pullpush-to-harbor.sh 
./5.docker-image-pullpush-to-harbor.sh: line 3: docker: command not found
./5.docker-image-pullpush-to-harbor.sh: line 4: docker: command not found
./5.docker-image-pullpush-to-harbor.sh: line 5: docker: command not found
./5.docker-image-pullpush-to-harbor.sh: line 6: docker: command not found

그래서 docker를 설치한 다음, 아래 내용들처럼 pull은 된 거 같은데, push는 인증서 이슈로 실패한 거 같습니다.

root@cp-k8s:~/_Lecture_prom_learning.kit/ch6/6.3# ./5.docker-image-pullpush-to-harbor.sh 
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Error response from daemon: Get "https://192.168.1.63/v2/": tls: failed to verify certificate: x509: certificate signed by unknown authority
Using default tag: latest
latest: Pulling from library/nginx
f11c1adaa26e: Pull complete 
c6b156574604: Pull complete 
ea5d7144c337: Pull complete 
1bbcb9df2c93: Pull complete 
537a6cfe3404: Pull complete 
767bff2cc03e: Pull complete 
adc73cb74f25: Pull complete 
Digest: sha256:67682bda769fae1ccf5183192b8daf37b64cae99c6c3302650f6f8bf5f0f95df
Status: Downloaded newer image for nginx:latest
docker.io/library/nginx:latest
Using default tag: latest
The push refers to repository [192.168.1.63/library/nginx]
Get "https://192.168.1.63/v2/": tls: failed to verify certificate: x509: certificate signed by unknown authority
root@cp-k8s:~# docker images
REPOSITORY                   TAG       IMAGE ID       CREATED       SIZE
192.168.1.63/library/nginx   latest    fffffc90d343   3 weeks ago   188MB
nginx                        latest    fffffc90d343   3 weeks ago   188MB

그 다음엔 강의 앞 부분으로 돌아가서, 인증서 설치 부분을 다시 진행해보았습니다.

root@harbor:~/_Lecture_prom_learning.kit/ch6/6.3/2.harbor-certificate# ./create-certificate.sh 
Certificate request self-signature ok
subject=C = KR, ST = Seoul, L = Seoul, O = lecture, OU = prometheus, CN = 192.168.1.63
./create-certificate.sh: line 26: sshpass: command not found
./create-certificate.sh: line 27: sshpass: command not found
./create-certificate.sh: line 28: sshpass: command not found
./create-certificate.sh: line 29: sshpass: command not found
./create-certificate.sh: line 33: sshpass: command not found
./create-certificate.sh: line 34: sshpass: command not found
./create-certificate.sh: line 35: sshpass: command not found
./create-certificate.sh: line 36: sshpass: command not found
./create-certificate.sh: line 33: sshpass: command not found
./create-certificate.sh: line 34: sshpass: command not found
./create-certificate.sh: line 35: sshpass: command not found
./create-certificate.sh: line 36: sshpass: command not found
./create-certificate.sh: line 33: sshpass: command not found
./create-certificate.sh: line 34: sshpass: command not found
./create-certificate.sh: line 35: sshpass: command not found
./create-certificate.sh: line 36: sshpass: command not found
mkdir: cannot create directory ‘/root/_Lecture_prom_learning.kit/ch6/6.3/tls/’: File exists
mv: cannot stat 'ca.srl': No such file or directory

앞서 말씀드린 대로 docker처럼 sshpass 가 없어서 새로 설치한 다음, 계속 진행해보았는데 ca.srl 파일이 생성이 되지 않더라고요. 그래서 그런 건지 이미지 push가 계속 실패하였습니다.

 

질문을 좀 정리하자면... 일단 마스터 노드에 sshpass, docker 가 설치가 안 되어 있는 건지, 바쁘시겠지만 확인 한 번 부탁드립니다. 그리고 이미지 push 이슈를 해결하는 방법도 함께 가이드 부탁 드리겠습니다.

감사합니다.

답변 2

1

조훈(Hoon Jo)님의 프로필 이미지
조훈(Hoon Jo)
지식공유자

2024. 07. 18. 22:04

안녕하세요

CentOS 에서 우분투로 변경하면서 docker가 없는걸 사전에 인지하지 못했네요 ㅠㅠ 죄송합니다.

우선 위의 이슈를 해결하기 위해서 다음의 내용을 진행해 주시면 될 것 같습니다.

  1. Vagrant box update

vagrant box update 
vagrant box prune 
# 만약 이렇게 했음에도 Ubuntu-k8s의 버전이 0.8.5가 아니라면 
vagrant box remove sysnet4admin/Ubuntu-k8s
# 를 진행하고 나서 다시 
vagrant up 
# 을 통해서 새로운 버전을 받아주시기 바랍니다. 

Ubuntu-k8s v0.8.5 부터 sshpass가 기본 내장되어 동작하도록 되어 있어서 해당 부분이 설치되어야 좀 더 편리하게 인증서를 각 노드에 복사하실 수 있으십니다.

 

  1. apt-get install docker

docker가 예전에는 컨테이너 런타임으로 사용되었는데 이제는 docker 내부에 있던 containerd를 직접 쓰도록 변경하였습니다. 그래서 docker가 설치되어 있지 않은데...

해당 부분의 원할한 진행을 위해

6.3 - 5.docker-image-pullpush-to-harbor.sh

9.2 - 3.docker-image-pullpush-to-harbor.sh

# Docker version 
docker_V='5:24.0.6-1~ubuntu.22.04~jammy' 

# install & enable docker 
apt-get update 
apt-get install docker-ce=$docker_V docker-ce-cli=$docker_V -y 

따라서 5번 그리고 3번을 실행하시면 전에 도커를 설치하도록 진행될 것 입니다.

진행에 불편함을 드려서 다시 한번 죄송하다는 말씀 드립니다.

이후 진행하시면서 어려운 점이 있으면 편하게 말씀 부탁드립니다.

Haksung Kim님의 프로필 이미지
Haksung Kim
질문자

2024. 07. 18. 22:18

항상 빠르게 답변주셔서 감사드립니다.

사정상 바로 확인은 불가해서 내일 알려주신 방법으로 진행해보고 회신 드리겠습니다.

감사합니다.

조훈(Hoon Jo)님의 프로필 이미지
조훈(Hoon Jo)
지식공유자

2024. 07. 19. 10:55

@Haksung Kim

내용이 다소 변경이 있으니 다시 한번 내용을 봐주시길 바랍니다.

Haksung Kim님의 프로필 이미지
Haksung Kim
질문자

2024. 07. 19. 12:01

수정 전후 답변 내용은 모두 확인하였습니다.

일단 현재 상황을 결론부터 말씀드리면, git에서 소스 전체를 다시 다운 받아서 새로 설치하고 있습니다. 어차피 부분적으로 수정해주신 내용들도 있고 해서, 차라리 깔끔하게 새로 받는게 낫겠다 싶더라고요.

1.Vagrant box update 의 경우 ch2/ch2.3 안에서 여러 차례 진행해보았는데, 제가 뭔가 잘못하고 있어서 그런건지 Ubuntu-k8s v0.8.5 로 업데이트가 안돼서 결론적으로 위에 말씀드린대로 소스를 새로 받아 세팅을 다시 하고 있습니다. 설치가 마무리 되면 알려주신 나머지 가이드도 테스트 해보고 추가 회신 드리겠습니다.

감사합니다.

조훈(Hoon Jo)님의 프로필 이미지
조훈(Hoon Jo)
지식공유자

2024. 07. 19. 12:12

안녕하세요 vagrant가 box 업데이트를 잘 못하는 경우가 있습니다.

그럼 경우 box 이미지를 삭제하고 받으시면 최신으로 받아올 것입니다.

그리고 소스는 rere<tab>을 치시면 최신으로 업데이트 하니 그걸 활용하셔도 괜찮을 것 같습니다.

혹시 진행이 안되는 부분이 있으면 편하게 다시 말씀드리겠습니다!

Haksung Kim님의 프로필 이미지
Haksung Kim
질문자

2024. 07. 19. 13:10

결론부터 말씀드리면 강사님 조언과 gpt 도움을 받아가며 열심히 도전해보았으나 실패하였습니다.

일단 앞서 알려주셨던 Ubuntu-k8s vagrant box 삭제 과정은 아래와 같이 앞에 sysnet4admin 까지 붙였더니 삭제가 되었습니다.

PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit> vagrant box list
sysnet4admin/CentOS-k8s (virtualbox, 0.8.0)
sysnet4admin/Ubuntu-k8s (virtualbox, 0.8.2)
PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit> vagrant box remove sysnet4admin/Ubuntu-k8s
Removing box 'sysnet4admin/Ubuntu-k8s' (v0.8.2) with provider 'virtualbox'...
PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit> vagrant box list
sysnet4admin/CentOS-k8s (virtualbox, 0.8.0)

그리고 나서 gpt의 도움을 받아 vagrantfile 을 다음과 같이 만들어서 vagrant up을 시도해보았으나 실패하였습니다.

Vagrant.configure("2") do |config|
  config.vm.box = "sysnet4admin/Ubuntu-k8s"
  config.vm.box_version = "0.8.5"
end

vagrant up을 실행하였을 때 다음과 같은 메시지가 뜹니다. 그리고 sysnet4admin/CentOS-k8s 밖에 보이지 않습니다.

PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s> vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'sysnet4admin/Ubuntu-k8s' could not be found. Attempting to find and install...
    default: Box Provider: virtualbox
    default: Box Version: 0.8.5
==> default: Loading metadata for box 'sysnet4admin/Ubuntu-k8s'
    default: URL: https://vagrantcloud.com/api/v2/vagrant/sysnet4admin/Ubuntu-k8s
The box you're attempting to add has no available version that
matches the constraints you requested. Please double-check your
settings. Also verify that if you specified version constraints,
that the provider you wish to use is available for these constraints.

Box: sysnet4admin/Ubuntu-k8s
Address: https://vagrantcloud.com/api/v2/vagrant/sysnet4admin/Ubuntu-k8s
Constraints: 0.8.5
Available versions: 0.5.0, 0.5.1, 0.7.0, 0.7.1, 0.8.0, 0.8.2, 0.8.3, 0.8.4, 0.8.5
PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s> notepad Vagrantfile
PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s> vagrant box list
sysnet4admin/CentOS-k8s (virtualbox, 0.8.0)

일단 상황은 이렇습니다.

끝으로 rere<tab> 은 알려주셔서 감사합니다. 추후 잘 활용하도록 하겠습니다.

조훈(Hoon Jo)님의 프로필 이미지
조훈(Hoon Jo)
지식공유자

2024. 07. 19. 15:18

안녕하세요

잘 하고 계셨는데 안되신 부분이 있다니....

우선 삭제 부분은 full name을 적어야 하는거라서 잘 하셨고, 적어주신 내용으로 위에도 업데이트 하였습니다.

그리고 작성하신 내용에 큰 문제는 없는거 같은데...

box를 못 가져오는게 신기하긴 하네요

우선 제 생각에는 2.3에 Vagrantfile에 있는 곳에서 vagrant up을 실행하시면

현재 box 이미지가 없는 상태일테니, 최신(v0.8.5)를 받아서 진행하게 될 것입니다.

그 방법을 써보시면 어떨지 의견을 드립니다.

Haksung Kim님의 프로필 이미지
Haksung Kim
질문자

2024. 07. 19. 20:11

강사님 일단.....신기한 상황이 발생했습니다.

결론부터 말씀드리면 최신버전 v0.8.5 는 설치가 안 됩니다. 대신 v0.8.2만 설치가 됩니다.

게다가 vagrant box update를 해도 v0.8.2가 최신버전이라며 절대 업데이트를 시켜주지 않습니다.

# config.vm.box_version = "0.8.5" 버전을 입력해도 안됨(위에 남긴 댓글 참조 부탁 드립니다.)

Vagrant.configure("2") do |config|
  config.vm.box = "sysnet4admin/Ubuntu-k8s"
  config.vm.box_version = "0.8.5"
end


# config.vm.box_version = "0.8.5" 빼고 알아서 최신 버전으로 받으라고 하면 "0.8.2"로 받음

Vagrant.configure("2") do |config|
  config.vm.box = "sysnet4admin/Ubuntu-k8s"
end

그리고 아래와 같이 작업을 이어서 진행해 보았습니다만, 해결되지 않고 있습니다.

#기존 vagrantfile 삭제 후 새로 파일을 생성하여 작업을 진행해보았음
PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s> del .\Vagrantfile
PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s> ls


    디렉터리: C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----      2024-07-19  오후 12:49                .vagrant


PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s> cd .\.vagrant\
PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s\.vagrant> ls


    디렉터리: C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s\.vagrant


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----      2024-07-19  오후 12:49                machines
d-----      2024-07-19  오후 12:49                rgloader


PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s\.vagrant> cd..
PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s> del .\.vagrant\

확인
C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s\.vagrant\의 항목에는 하위
항목이 있으며 Recurse 매개 변수를 지정하지 않았습니다. 계속하면 해당 항목과 모든 하위 항목이
제거됩니다. 계속하시겠습니까?
[Y] 예(Y)  [A] 모두 예(A)  [N] 아니요(N)  [L] 모두 아니요(L)  [S] 일시 중단(S)  [?] 도움말
(기본값은 "Y"):y
PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s> ls
PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s>
PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s> vagrant init sysnet4admin/Ubuntu-k8s
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.
PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s> ls


    디렉터리: C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----      2024-07-19   오후 7:32           3474 Vagrantfile
#vagrant up -> vagrant box update 차례로 진행

PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s> vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'sysnet4admin/Ubuntu-k8s' could not be found. Attempting to find and install...
    default: Box Provider: virtualbox
    default: Box Version: >= 0
==> default: Loading metadata for box 'sysnet4admin/Ubuntu-k8s'
    default: URL: https://vagrantcloud.com/api/v2/vagrant/sysnet4admin/Ubuntu-k8s
==> default: Adding box 'sysnet4admin/Ubuntu-k8s' (v0.8.2) for provider: virtualbox
    default: Downloading: https://vagrantcloud.com/sysnet4admin/boxes/Ubuntu-k8s/versions/0.8.2/providers/virtualbox/unknown/vagrant.box
    default:
==> default: Successfully added box 'sysnet4admin/Ubuntu-k8s' (v0.8.2) for 'virtualbox'!
==> default: Importing base box 'sysnet4admin/Ubuntu-k8s'...
==> default: Matching MAC address for NAT networking...
==> default: Checking if box 'sysnet4admin/Ubuntu-k8s' version '0.8.2' is up to date...
==> default: Setting the name of the VM: ubuntu-k8s_default_1721385316973_33321
==> default: Fixed port collision for 22 => 2222. Now on port 2200.
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
==> default: Forwarding ports...
    default: 22 (guest) => 2200 (host) (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
    default: SSH address: 127.0.0.1:2200
    default: SSH username: vagrant
    default: SSH auth method: private key
    default:
    default: Vagrant insecure key detected. Vagrant will automatically replace
    default: this with a newly generated keypair for better security.
    default:
    default: Inserting generated public key within guest...
    default: Removing insecure key from the guest if it's present...
    default: Key inserted! Disconnecting and reconnecting using new SSH key...
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
    default: The guest additions on this VM do not match the installed version of
    default: VirtualBox! In most cases this is fine, but in rare cases it can
    default: prevent things such as shared folders from working properly. If you see
    default: shared folder errors, please make sure the guest additions within the
    default: virtual machine match the version of VirtualBox you have installed on
    default: your host and reload your VM.
    default:
    default: Guest Additions Version: 6.0.0 r127566
    default: VirtualBox Version: 7.0
==> default: Mounting shared folders...
    default: /vagrant => C:/Users/HAKSUNG/k8s-edu/_Lecture_prom_learning.kit/ch2/2.3/ubuntu-k8s
PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s> vagrant box list
sysnet4admin/CentOS-k8s (virtualbox, 0.8.0)
sysnet4admin/Ubuntu-k8s (virtualbox, 0.8.2)
PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s> vagrant box update
==> default: Checking for updates to 'sysnet4admin/Ubuntu-k8s'
    default: Latest installed version: 0.8.2
    default: Version constraints:
    default: Provider: virtualbox
    default: Architecture: "i386"
==> default: Box 'sysnet4admin/Ubuntu-k8s' (v0.8.2) is running the latest version.
PS C:\Users\HAKSUNG\k8s-edu\_Lecture_prom_learning.kit\ch2\2.3\ubuntu-k8s> vagrant box prune
The following boxes will be kept...
sysnet4admin/CentOS-k8s (virtualbox, 0.8.0)
sysnet4admin/Ubuntu-k8s (virtualbox, 0.8.2)

Checking for older boxes...
No old versions of boxes to remove...

https://app.vagrantup.com/sysnet4admin/boxes/Ubuntu-k8s

저도 위 url 로 접속해서 확인해 봤습니다만, 분명 v0.8.5 최신 버전을 올려주신듯한데....이상하네요.

그냥 사이트에서 v0.8.5를 별도 다운받아 조치할 방법은 없을까요?

조훈(Hoon Jo)님의 프로필 이미지
조훈(Hoon Jo)
지식공유자

2024. 07. 19. 22:01

안녕하세요

좀 많이 이상하긴 하네요. 캐시가 남아서 그런거 같은데...

일반적으로 box 이미지만 지우면 새로 box를 받을 때 최신으로 받는데요

이걸 찾아서(호스트마다 어떤 차이로 그러는지 불명확) 해결하는 것보다는

그냥 현재 실습을 위해서라면 sshpass를 그냥 설치하시는게 더 편리하실 것 같습니다.

다만 히스토리에 있는 0.8.3에 dns 관련이 프로메테우스에 어느정도 영향을 미치는지 알기 어려워서요

 

box를 직접 내려받고 (오른쪽에 내려 받기 버튼)

https://app.vagrantup.com/sysnet4admin/boxes/Ubuntu-k8s

image

그 이후에 이 내용을 참고하셔서 box를 add하는 것도 방법이긴 합니다...만

 https://stackoverflow.com/questions/22065698/how-to-add-a-downloaded-box-file-to-vagrant

전 여전히 box를 다 지우고 (원래 설정을 모두 지울 필요가 없긴 한데....)

호스트에 어떤 영향인지 몰라서 정확히 가이드하기는 어렵긴 한데....

vagrant up만으로 최신 box 이미지를 가져오시는 것을 가장 추천하고 싶긴 합니다.

 

저도 위의 box add는 빌드할 때 테스트 목적으로만 쓰고 저 방법은 사용하지 않습니다;;;

Haksung Kim님의 프로필 이미지
Haksung Kim
질문자

2024. 07. 20. 12:19

바쁘신 와중에 항상 자세하게 답변주셔서 감사드립니다.

사실 저도 강사님 말씀처럼 캐시가 좀 의심됩니다.

제 윈도우 데스크탑은 기존에 강사님 k8s 기초 강의를 들었던 1.2x 환경이었는데, 거기에 그대로 프로메테우스 1.3x 환경을 올렸기 때문에 아마도 관련 이슈가 발생된게 아닐까? 하는 생각도 들더라고요.

일단 사정상 제 인텔 맥북에 먼저 테스트 해보고, 저녁쯤 윈도우 데탑에 말씀주신대로 캐시 날리고 한번 재도전 해보겠습니다.

감사합니다.

 

Haksung Kim님의 프로필 이미지
Haksung Kim
질문자

2024. 07. 20. 13:48

맥북에서 방금 테스트 해봤습니다.

결론적으로 잘 됩니다 ㅎㅎ

sshpass 이슈도 0.8.5 가 설치되면서 자동 해결되었고, harbor에 nginx pull, push 실습도 마무리 하였습니다.

jindad@jindadui-MacBookPro 1.vagrantup-harbor % vagrant box list
sysnet4admin/Ubuntu-k8s (virtualbox, 0.8.5, (amd64))

image

역시나 예전에 윈도우 데탑에서 k8s 강의 들을 때 구축해놨던 환경이 영향을 줬던거 같습니다. 집에 복귀하면 데탑도 싹 지우고 다시 진행 해봐야 할 것 같습니다.

번거롭게 해드려 죄송합니다.

 

 

조훈(Hoon Jo)님의 프로필 이미지
조훈(Hoon Jo)
지식공유자

2024. 07. 20. 15:17

아 해결되셔서 다행입니다. 🙂

기존에 쓰시던게 뭔가 이슈가 있었나 보네요!

이제 진행하시는데 문제가 없으시겠군요! 다행입니다. 진행하시면서 문제되는 점이 있으면 다시 말씀 부탁드립니다.

Haksung Kim님의 프로필 이미지
Haksung Kim
질문자

2024. 07. 20. 17:42

윈도우 데탑도 싹 지우고 다시 진행했더니 잘됩니다.

다시 한 번 감사드립니다.

0

인프런 AI 인턴님의 프로필 이미지

2024. 07. 18. 20:11

안녕하세요, 인프런 AI 인턴입니다.

Haksung Kim님의 문제는 스크립트 실행 시 발생하는 여러 가지 이슈에 대하여 문의하셨습니다. 해당 문제에 대한 구체적인 해결책을 제공하기 이전에, 설명하신 문제들을 간략히 요약해보겠습니다:

  1. sshpass 없음: create-certificate.sh 스크립트 실행 시 sshpass 명령어를 찾을 수 없다는 오류가 발생했습니다.
  2. Docker 없음: 5.docker-image-pullpush-to-harbor.sh 스크립트 실행 시 Docker가 설치되어 있지 않아서 문제가 발생했습니다.
  3. 인증서 이슈: Docker를 설치한 후 이미지를 Harbor로 push할 때 인증서 관련 오류가 발생했습니다.

우선, 확인해드릴 수 있는 직접적인 해결책 링크가 없으므로, 몇 가지 제안을 드리도록 하겠습니다.

  1. sshpass 문제: 시스템에 sshpass가 설치되어 있지 않다면, 해당 패키지를 설치해야 합니다. 대부분의 리눅스 배포판에서는 sudo apt-get install sshpass 또는 sudo yum install sshpass 명령어를 통해 설치할 수 있습니다.

  2. Docker 설치: Docker가 설치되어 있지 않다면, 이를 설치해야 하는데요, 공식 Docker 문서(Get Docker)에 방문해서 내용을 참고하여 설치할 수 있습니다.

  3. 인증서 이슈: Harbor에서 Docker 이미지를 push하는 데 있어서 인증서 관련 이슈는 Harbor가 사용하는 자체 서명된 인증서(SSL) 때문일 수 있습니다. 이를 해결하기 위해서는 Docker 클라이언트에 Harbor의 인증서를 신뢰할 수 있는 인증서로 추가해야 합니다. 이 과정은 서버의 /etc/docker/certs.d/your-harbor-domain/ 디렉토리에 서버 SSL 인증서를 복사하는 작업을 포함합니다. 허나, 정확한 경로는 Harbor의 설치 및 구성에 따라 다를 수 있으니, 해당 부분은 조심스럽게 진행해야 합니다.

이 문제들은 일반적으로 경험이 많지 않은 사용자에게는 복잡하게 느껴질 수 있습니다. 따라서, 각 단계를 천천히 진행하시고 필요한 경우 강의의 설명을 다시 한번 찬찬히 검토하시기 바랍니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.