본문 바로가기

Docker

[Docker] redis , docker sh (터미널 접속)

* 래디스 서버가 먼저 작동하고 있어야 함

-> 그 후 레디스 클라이언트 실행 후 명령어를 레디스 서버에 전달

 

(레디스  클라이언트 redis-client  ----------> 명령어 set value1 hello -----> 레디스 서버 docker run redis ) 

 

> docker run redis 

레디스를 서버를 작동 시킴

> docker exec -it <컨테이너아이디> redis-cli

exec 를 써서 redis 서버가 실행중인 서버에 접근 (컨테이너 안으로 들어와서 접근가능)

 

> redis-cli 로 접근 불가X (컨테이너 밖에 있기 때문에....) 

 

-it 옵션 : -it 를 붙여줘야 명령어를 실행 한 후 계속 명령어를 적을 수 있다.

-i : interactive 상호적인 

-t : teminal

 

-i + -t = -it

 

=> -it 가 없으면 레디스를 켜기만 하고 밖으로 나온다.

 

redis-cli 오타에 주의하자.. reids로 자꾸 쓴다;;; 하하하하;;;;;

 

* 실행중인 컨테이너에서 터미널 생활 즐기기

 

docker exec -it 컨테이너아이디 명령어

=> 이런식으로 명령어 전달을 full 로 치기 번거로우니 shell 이나 terminal 환경으로 접속 해 줄수 있다.

 

> docker exec -it 컨테이너아이디 sh 

(sh, bash, zsh , powershell 같은것들...)

 

1. alpine 이미지 컨테이너 하나를 실행해 준다.

2. 다른 터미널을 하나 켜서 docker exec -it 컨테이너아이디 sh 입력

  => 터미널 환경으로 접속 

3. unix 환경의 명령어는 모두 사용 가능하다

- ls 

- touch new-file : 파일생성

- expert hello=hi

- echo

 

4. ctrl + d 로 터미널환경에서 빠져나올수 있다. (ctrl+c 로는 빠져나올수가 없음)