티스토리 뷰

 

들어가기에 앞서

지금까지 Docker를 세팅하는 작업을 가졋다. 분명 훌륭한 기능이지만 지금 까지 나온 기능만으로는 한가지 단점이 발생한다. 하나의 컨테이너에서 여러개의 프로그램을 실행시켜야 하는경우 터미널창이 하나이기 때문에 발생하는 문제로 이를 해결하기 위해서는 Docker의 Exec 명령어를 이용하여 여러 창을 띄어 사용하거나 Termiator와 같이 프로그램을 설치하여 화면을 분할하는 방법이다. 여기에서는 화면을 분할하는 tmux를 이용하여 여러개의 프로그램을 활용하는 방법을 기술한다.

 

tmux 설치

tmux(terminal multiplexer)는 내장으로 설치되어 있는 프로그램이 아니기 때문에 추가적인 설치가 필요하다.

apt install tmux #Docker의 경우 su권한이 기본이기 때문에 sudo가 필요없다.

 

설치가 완료되면 tmux를 실행해주면 된다.

tmux

달라진게 보이지 않지만 자세히 보면 아래쪽에 초록색 바가 생긴것이 보인다면 정상적으로 실행된것임을 할 수있다.

이제 이 tmux를 사용하는 방법을 익혀야 하는데 마치 Vim 처럼 tmux 기능을 사요할 트리거 단축키를 이용하여 기능을 사용할 수 있다.

먼저 가로로 화면을 분할하는 방법으로 명령어는 다음과 같다.

#가로로 화면분할
<CTRL-B> %

추가적인 Enter키 없이 바로 실행이 되며 이때 나누어진 창을 Pane이라고 부른다. 세로로 쪼개는 명령어의 경우 %대신 "를 입력하면 된다.

#세로로 화면분할
<CTRL-B> "

이렇게 나뉘어진 pane을 자유롭게 이동할 때는 "트리거키 + 방향키"로 이동이 가능하다.

 

만약 pane을 추가하는 것이 아닌 창을 새롭게 만들고 싶다면 "트리거키 + c"를 누르면 창이 하나 추가된다 이때 추가된게 티가 안나는데 아래 초록색 바를 잘 보면 새롭게 하나가 추가된것을 알 수있다.

#새로운 창을 추가
<CTRL-B> c

이때 디폴트로 정해지는 이름이 0, 1 이런식으로 숫자가 붙어 이름이 정해지는데 이 창을 바꾸기위해서는 원하는 창의 이름을 알 필요가 있다.

 

#원하는 창으로 이동
<CTRL-B> 0 #창이름

 

다른 명령어

  • 프로그램 실행상태로 창 나가기
    <CTRL-B> d
  • 실행중인 tmux 확인
    tmus ls
  • 나온 tmux에 다시 접속하기
    tmus attach
  • tmus 종료
    exit
    #or
    <CTRL-B> x #pane 종료
    #or
    <CTRL-B> & #window 종료
    #or
    tmux kill-session -t -0 #세션 통째로 종료
  • 기타 설정
    tmux new-session -s SESSION_NAME #SESSION_NAME이라는 이름의 새로운 세션을 시작한다.
    
    tmux list-sessions #현재 열려있는 세션 목록을 보여준다.
    
    tmux has-session -t TARGET_SESSION #TARGET_SESSION이라는 이름의 세션이 열려있는지 확인해본다.
    
    tmux attach-session -t TARGET_SESSION #TARGET_SESSION이라는 이름의 세션으로 들어간다.

 

'Luanbot-factory > MISO-bot' 카테고리의 다른 글

WSL2 ROS (with Docker)  (4) 2021.10.05
WSL Docker 설치  (0) 2021.10.04
WSL2 Customize  (1) 2021.10.03
WSL2 GUI 사용하기  (1) 2021.10.02
WSL2 Ubuntu VScode 연동  (2) 2021.10.01
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31