반응형
1. nginx image 설치
#nginx 설치여부 확인
vagrant@ubuntu2204:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
httpd latest 4d98e80840bb 3 weeks ago 148MB
hello-world latest 74cc54e27dc4 4 weeks ago 10.1kB
#설치 진행, 버전의 언급이 없으므로 최신버전으로 설치됨
vagrant@ubuntu2204:~$ docker pull nginx
Using default tag: latest
latest: Pulling from library/nginx
c29f5b76f736: Already exists
e19db8451adb: Pull complete
24ff42a0d907: Pull complete
c558df217949: Pull complete
976e8f6b25dd: Pull complete
6c78b0ba1a32: Pull complete
84cade77a831: Pull complete
Digest: sha256:91734281c0ebfc6f1aea979cffeed5079cfe786228a71cc6f1f46a228cde6e34
Status: Downloaded newer image for nginx:latest
docker.io/library/nginx:latest
#이미지 생성여부 확인
vagrant@ubuntu2204:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 97662d24417b 13 days ago 192MB
httpd latest 4d98e80840bb 3 weeks ago 148MB
hello-world latest 74cc54e27dc4 4 weeks ago 10.1kB
nginx 설치된 것을 확인 할 수 있음
<다운받은 image 저장 위치>
vagrant@ubuntu2204:~$ sudo ls /var/lib/docker --color
buildkit containers engine-id image network overlay2 plugins runtimes swarm tmp volumes
현재 파일이 보이지 않음
nginx의 파일을 찾기로 확인
#nginx의 image id로 찾았으나, 검색 에러표출
vagrant@ubuntu2204:~$ docker sudo find /var/lib/docker/ --name 97662d24417b
unknown flag: --name
id의 명칭이 일부만 출력되기 때문에 해당 image를 찾을 수 없음
실제 id 확인
vagrant@ubuntu2204:~$ docker images --no-trunc
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest sha256:97662d24417b316f60607afbca9f226a2ba58f09d642f27b8e197a89859ddc8e 13 days ago 192MB
httpd latest sha256:4d98e80840bbc1ef247bde526eda3d8c910a5a4b27aaa187a4c44f916c7e2d0b 3 weeks ago 148MB
hello-world latest sha256:74cc54e27dc41bb10dc4b2226072d469509f2f22f1a3ce74f4a59661a1d44602 4 weeks ago 10.1kB
sha256으로 암호화 되어있으며, 실제 id 명칭 확인가능
image가 저장되어있음을 확인 할 수 있음
vagrant@ubuntu2204:~$ sudo find /var/lib/docker/ -name 97662d24417b316f60607afbca9f226a2ba58f09d642f27b8e197a89859ddc8e
/var/lib/docker/image/overlay2/imagedb/content/sha256/97662d24417b316f60607afbca9f226a2ba58f09d642f27b8e197a89859ddc8e
2. mariaDB image 설치
<mariadb 설치>
#mariadb 설치
vagrant@ubuntu2204:~$ docker pull mariadb
Using default tag: latest
latest: Pulling from library/mariadb
5a7813e071bf: Pull complete
bdecd990c29c: Pull complete
5db80086e4da: Pull complete
901fe9394c00: Pull complete
43eb19e1b102: Pull complete
597f7afe50fe: Pull complete
e1dede558384: Pull complete
5c3a22df929b: Pull complete
Digest: sha256:310d29fbb58169dcddb384b0ff138edb081e2773d6e2eceb976b3668089f2f84
Status: Downloaded newer image for mariadb:latest
docker.io/library/mariadb:latest
#설치된 images
vagrant@ubuntu2204:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mariadb latest a914eff5d2eb 6 days ago 336MB
nginx latest 97662d24417b 2 weeks ago 192MB
httpd latest 4d98e80840bb 3 weeks ago 148MB
hello-world latest 74cc54e27dc4 4 weeks ago 10.1kB
<mariaDB 컨테이너 생성>
#컨테이너 생성
#기존에 httpd 설치와 동일하게 run(실행) 명령어를 사용했습니다.
vagrant@ubuntu2204:~$ docker run -d --name mydb mariadb:latest
fe88f1a08e389b3e1d0dce83ef9630cd3a0b5c3e6ce3e20f20b62c6c80358b7f
#실행되고 있는 컨테이너 확인 -> 컨테이너 실행이 없음!
vagrant@ubuntu2204:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
#실행이 되지 않은 상태로 컨테이너가 생성이 되어있음을 확인
vagrant@ubuntu2204:~$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
fe88f1a08e38 mariadb:latest "docker-entrypoint.s…" 12 seconds ago Exited (1) 8 seconds ago mydb
#중지된 원인찾기
vagrant@ubuntu2204:~$ docker logs mydb
2025-02-20 11:47:29+00:00 [Note] [Entrypoint]: Entrypoint script for MariaDB Server 1:11.7.2+maria~ubu2404 started.
2025-02-20 11:47:31+00:00 [Warn] [Entrypoint]: /sys/fs/cgroup///memory.pressure not writable, functionality unavailable to MariaDB
2025-02-20 11:47:31+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
2025-02-20 11:47:31+00:00 [Note] [Entrypoint]: Entrypoint script for MariaDB Server 1:11.7.2+maria~ubu2404 started.
2025-02-20 11:47:32+00:00 [ERROR] [Entrypoint]: Database is uninitialized and password option is not specified
You need to specify one of MARIADB_ROOT_PASSWORD, MARIADB_ROOT_PASSWORD_HASH, MARIADB_ALLOW_EMPTY_ROOT_PASSWORD and MARIADB_RANDOM_ROOT_PASSWORD
#비밀번호 옵션이 지정되지 않았다는 에러메세지와 옵션들을 기재하고 있습니다.
#생성방법
$ docker run -d --env(환경변수) MARIADB_ROOT_PASSWORD=mypass(패스워드설정) --name mariadb2 mariadb:latest
#생성결과
vagrant@ubuntu2204:~$ docker run -d --env MARIADB_ROOT_PASSWORD=mypass --name mariadb2 mariadb:latest
3b02322e55eaecc013c8afdd38e8b179f0c508d0b85c2ec05aeb2a983d580e65
vagrant@ubuntu2204:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3b02322e55ea mariadb:latest "docker-entrypoint.s…" 7 seconds ago Up 6 seconds 3306/tcp mariadb2
#mariadb 접속
vagrant@ubuntu2204:~$ docker exec -it mariadb2 /bin/bash
root@3b02322e55ea:/#
<mariaDB 다운로드가 안될 경우>
sign up 클릭
회원가입 -> 구글로 가입하니 안되서.. 다시 이메일로 가입함
도커 로그인시도
#docker 사이트에서 회원가입을 하고 로그인을 합니다
vagrant@ubuntu2204:~$ docker login -u piglet8@example.com
Password:
WARNING! Your password will be stored unencrypted in /home/vagrant/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credential-stores
Login Succeeded
반응형
'요즘공부' 카테고리의 다른 글
[도커&쿠버네티스] 교육 1일차_ 컨테이너 생성시 삭제되지 않도록 하는 법 (0) | 2025.02.21 |
---|---|
[도커&쿠버네티스] 교육 1일차_ centos9,mysql image 설치 (0) | 2025.02.20 |
[도커&쿠버네티스] 교육 1일차_도커 설치 및 httpd 컨테이너 생성,삭제 (0) | 2025.02.16 |
[도커&쿠버네티스] 교육 1일차_사전준비 사항 (0) | 2025.02.15 |
CLASS101 화이트햇 해킹, IT 취준생과 현직개발자를 위한 웹 해킹 입문 강의 공부4 (1) | 2024.12.15 |