BackEnd★★★/Docker도커&Cloud기타

Docker❤️명령어 정리❤️command

내인생PLUS 2022. 2. 6. 09:14
728x90



#Homedir: 사용자/.docker

 

 

MacOS M1 pro 기준 우측 상단 도커 아이콘 클릭 후DashBoard를 활용을 많이 하자

# docker run -d -p 80:80 docker/getting-started
docker run -d -p 80:80 docker/getting-started
// VSCODE라이브 서버처럼 내 PC에서 인터넷 환경처럼 돌려주기 시작!!


# docker ps
docker ps






# docker stop relaxed_black
docker stop relaxed_black
// 서버 멈추기 docker ps 쳐서 NAMES를 쳐 주면됨."relaxed_black"은 다른 이름이 될 수도 있음.!!


# docker ps
docker ps
// 살아있는 서버 확인


# docker ps -a
docker ps -a
// 서버 죽은거 다시 확인

 

 


 

총 정리!!!

# docker --version
docker --version
// =버전체크

# docker version
docker version
// 더 자세히 버젼들 나옴. 여러개


# docker info
docker info

# docker --help
docker --help
-------------test----------------

# docker run hello-world
docker run hello-world

--------------------------------------------

------실전-----------------------------

# docker start crazy_ptolemy
docker start crazy_ptolemy
// crazy_ptolemy 라는 이름으로 도커 시작하기


# docker ps
docker ps
//지금 실행되는 도커 사용자(도커에서는 image라고 표현함) 보기
// up 5 secs 이렇게 표시 시작 시간이 5초 지났다는 표현


# docker ps -a
docker ps -a
// 종료된 사용자 까지 다 봄.  history같은거


# docker stop crazy_ptolemy
docker stop crazy_ptolemy
// crazy_ptolemy 사용자(이미지) 종료


# docker ps
docker ps
// 잘 종료 됬는지 확인하기 crazy_ptolemy가 없으면 성공적으로 stop된거임.

# docker ps -a
docker ps -a
// 과거 사용 기록 까지 다 확인 가능 Exited (0) 1 minutes ago 이렇게 표시


# docker rm crazy_ptolemy
docker rm crazy_ptolemy
// crazy_ptolemy 사용자(이미지) 삭제 

# docker ps -a
docker ps -a
// 과거 기록조차 다 삭제됨. 무서운 rm


# docker images
docker images
//등록된 이미지를(사용자)를 볼 수 있음. 사용자 계정같은 느낌!!



# docker run -p 8080:80 --name hello -d hello-world
docker run -p 8080:80 --name hello -d hello-world
// images에 있던 박제 되었던 계정이 docker start 해주는 명령어
// 오.. 신기.. 죽은게 살아나는 기분!!

//크롬 열고
//홈페이지 창에
localhost:8080

// Hello DokerCon! 이 보인다.  신기 --

# docker stop hello
docker stop hello
// hello사용자를 stop 시킴

# docker ps
docker ps
// stop 시킨 사용자를 나오지 않음


# docker ps -a
docker ps -a
// Names를 잘 봐야함. 그걸로 start stop //docker run -p 어쩌구저쩌구 사용가능함.
// NAMES 가 중요하구만!!!


# docker logs hello
docker logs hello
// hello의 Port번호와 stopping server... 이렇게 확인 가능함. 뒷조사네 ㅋㅋ


# docker logs --help
docker logs --help
// 도움말 ㅋ


# docker logs -f hello
docker logs -f hello
// 죽은자가 살아나는 기적이 ㅋㅋㅋㅋ hello 살아남.


# docker ps
docker ps
// hello 살아난걸 확인했으니 stop 시키자


# docker stop helllo
docker stop helllo
// stop 시키기


-----------------서버 구축 풀스택으로 구축하기------------

# docker build -t hello-world .
docker build -t hello-world .
//맨 뒤에 . 점 하나 잊지 말자.!!
// 프로그램 빌드랑 비슷 이거하면 이제 서버구축할 여러개가 설치된다. 4~9개정도.....
// 풀스택으로 서버구축하느거인

# docker run hello-world
docker run hello-world
// 드디어 사건이 터짐. 풀스텍 시작


------깃허브처럼 레포지토리 만들어주고--------------------
https://hub.docker.com/
-------죽이는 기능 ㅋㅋ--------------------------------

# docker tag hello-world pmckee/hello-world
docker tag hello-world pmckee/hello-world

# docker images
docker images
// 이거 하면 홈페이지에서 레포지토리 해준 pmckee/hello-world가 만들어져 있다. 소름.!!


# docker push pmckee/hello-world
docker push pmckee/hello-world
// 깃허브 푸쉬해주는거랑 똑같네 ㅎㅎㅎ 죽인다!! 


# docker rmi pmckee/hello-world
docker rmi pmckee/hello-world
// 깃허브같이 허드도커 이미지를 지워 주자 내 하드 용량을 지키자 .ㅜㅜ


# docker pull pmckee/hello-world
docker pull pmckee/hello-world
// 자료 받기 깃허브랑 똑같네 ㅋㅋㅋ


# docker images
docker images
// 삭제한 pmckee부활... 거의 좀비수준.ㅋㅋㅋ

-----------
docker-compose.yml

version: '2'

services:
	web:
    	build:
        	context:
            dockerfile: Dockerfile
        container_name:web
        ports:
        - "8080:80"


-------------------------
# ll
ll
// ls 같은 기능 도스 dir처럼 밑으로 쭈르륵


# docker-compose up -d
docker-compose up -d
// 이거 하니 docker-hello-world_web / node 혹이 잔뜩 생겼다. (images가 너무 많아졌음. ㅠㅠ)


# docker ps
docker ps
// web(NAMES)이름을 가진 서버가 돌아가고 있다 ..역시 뭔가 거대한 이미지가 돌아가고 있다.


크롬에서
localhost:8080
하니 서버가 돌아가는것을 확인!!

# docker-compose down
docker-compose down
// 이제 서버를 내리자 ㅠㅠ


--------------------------------------
# docker-compose down --rmi all
docker-compose down --rmi all
// 묻지도 따지지도 않고 다 내려 다 꺼져!!!!
--------------------------------------


# docker ps
docker ps
// 아무것도 돌아가는게 없음 확인!!


# docker ps -a
docker ps -a
// history까지 다 삭제됨.



-----------
docker-compose.yml

version: '2'

services:
	web:
    	build:
        	context:
            dockerfile: Dockerfile
        container_name:web
        ports:
        - "8080:80"

db:
	image:mongo:3.6.1
    container_name: db
    volumes:
     - mongodb:/data/db
     - mongodb_config:/data/configdb
    ports:
     - 27017:27017
    command: mongod
    
 volumes:
 	mongodb:
    mongodb_config:

-------------------------


# docker-compose up -d
docker-compose up -d
// 몽고db가 추가 되어서 열심히 pull 되는중!!!


# docker ps
docker ps
// web& db가 사이 좋게 이미지에서 보인다.







—

# docker run ubuntu
docker run ubuntu
// 우분투 설치

# docker ps -a
docker ps -a
// 우분투가 command /bin/bash에 설치 된 모습 확인


# docker run -it ubuntu
docker run -it ubuntu
// 우분트 쉘이 실행됨.

—우분트쉘에서 실행————
# echo hello
hello

# whoami
root

# echo $0
/bin/bash


# history
1*
2 whoami
3 echo $0
4 history


# !2
whoami
root


# apt install nano

# apt update


# apt list

# nano
-> 에디터 나옴. ㅠㅠ

# apt remove nano

# pwd
/

# ls
dir처럼 폴더랑 쭉 나옴.

# ls -l
파일 권한하고 용량 시간 아주 자세히 나옴.


# more /etc/adduser .conf
뭔가 길게 나옴. more 화면이 15% 30% 이렇게 나와서 문서 스크롤 진행

# apt install less

# less /etc/adduser .conf
파일을 내가 원하는 데로 up, down가능


# head -n /et/adduser.conf
위에 5줄만 봄 . 빠르게 문서 체크할 때 씀.


# tail -n /et/adduser.conf
마지막 5줄만 봄 . 빠르게 문서 체크할 때 씀.

# cat 
 문서 볼때 쓰는 명령어 수정은 안되고 거의 print수준

# cat file1.txt file2.txt > combined.txt
문서 하나로 합치기? 죽이네 ㅎㅎ

# echo hello
hello

# echo hello > hello.txt

# ls
combined.txt file1.txt file2.txt hello.txt

# cat hello.txt
hello


# ls -l /etc > files.txt

# cat files.txt
폴더가 txt파일로 바뀌었음. ㅎㅎ 최고~!!

# >
이건 input
C++언어는 >> 이거 2개인데 거의 똑같음.ㅎㅎ

# <
output
C++언어는 << 이거 2개인데 거의 똑같음.ㅎㅎ


——————————————
알아봐야하는 명령어 공부 중

docker-machine ls


docker system info

 

 

 

 

Doker Documentation

https://docs.docker.com/

 

Docker Documentation

 

docs.docker.com

 

 

 

 

출처:

https://www.youtube.com/watch?v=iqqDU2crIEQ&t=31s




출처

https://youtu.be/gBdGTQUsTDY

 

 

 

다른 출처 2021버젼

https://www.youtube.com/watch?v=pTFZFxd4hOI 

 

 

 

 

docker-compose down --rmi all



//전체 모든 서버 내리기!!

https://docs.docker.com/compose/reference/down/

 

docker-compose down

 

docs.docker.com

 

반응형