본문 바로가기
요즘공부

[도커&쿠버네티스] 교육 1일차_ nginx, mariaDB image 설치

by 게으른 피글렛 2025. 2. 20.
반응형

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 다운로드가 안될 경우>

 

Get Started | Docker

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

 

 

반응형