태그 보관물: ubuntu

ubuntu 22.04 docker latest 버전 설치 하는 방법

Ubuntu 22.04에 Docker 엔진을 설치해 봅시다. 이전 버전들과 다른 배포판에서도 설치 방법은 크게 다르지 않습니다.
Docker 엔진은 stable 버전과 test버전이 있는데 저는 얼리(?)어댑터 성향이 있지만 굳이 어떤 오류가 있을지 알 수 없는 개발 중인 테스트 버전은 쓰지 않겠습니다.

도커 공식 홈페이지에서 아래의 우분투 64bit 버전이 필요하다고 합니다. (다들 사용하고 있죠? 🙄)

  • Ubuntu Mantic 23.10
  • Ubuntu Lunar 23.04
  • Ubuntu Jammy 22.04 (LTS)
  • Ubuntu Focal 20.04 (LTS)
# Add Docker's official GPG key:
sudo apt update

sudo apt install ca-certificates curl gnupg

sudo install -m 0755 -d /etc/apt/keyrings

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

sudo chmod a+r /etc/apt/keyrings/docker.gpg

우선 야무지게 apt 저장소를 업데이트 할 준비를 해봅시다. 우선 apt update를 한번 해주고
도커 설치에 필요한 레포지토리를 등록하는데 필요한 패키지들을 설치해주고 차례대로 진행해서 GPG키를 받아옵니다

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt-get update

GPG키를 받아왔으면 키를 이용(?)해서 레포지토리를 등록합니다. 이렇게 하면 도커에서 제공하는 최신(?) 도커엔진을 받아올 수가 있습니다.

 sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-compose

이제 본격적으로 도커를 설치해봅시다. 저는 docker-compose를 좋아하니깐 함께 설치하겠습니다.

설치가 모두 끝났으면 커맨드창에 docker –version 이라고 입력해 봅시다.

이렇게 나오면 성공!!

이제 도커로 뭘 해보려고 하면 root 계정이 아닌 이상 자꾸 권한이 없다고 나옵니다. 한글자라도 타이핑을 줄이는 것이 리눅서의 덕목이니 sudo를 붙이지 않고 docker를 실행해 봅시다

sudo usermod -aG docker $USER

이렇게 입력하고 패스워드를 한번만 입력하면 끝입니다. 명령어 실행 후 반드시 로그아웃 후 다시 로그인 해줍니다.
user modfies -append -Group docker $USER 의 줄임입니다. 유저를 수정하는 명령으로 docker 그룹에 $USER(현재 로그인 되어있는 유저)를 추가(append)하라 하는 정도로 알고 계시면 됩니다. 현재 내가 속하지 않았던 group이었던 docker 그룹에 매번 sudo로 인증(?)을 받고 그룹에 접근했어야 되었는데 이제 그룹에 가입해 버렸기 때문에 따로 인증을 받지 않아도 그룹활동(?)을 할 수 있게 되었습니다.

이상으로 도커 최신버전 설치에 대해 알아보았습니다.

ubuntu 22.04 설치 후 제일 먼저 하는 일

APT로 필요한(?) 패키지들 설치하기 – zsh, oh-my-zsh 설치

몇 해 전 우분투로 시작해서 아는 형님의 꼬임으로 민트, 아치, 만자로, 엔데버, 센트… 아주 그냥 의미없이 비주기적으로 배포판만 설치하고 있습니다. 처음엔 아주 어색했지만 이젠 어디에 무엇을 설치하던 공통적으로 배포판 설치 후 마음의 평온을 찾아주는 패키지들을 정리(?)해 보았습니다. 제가 쓸려고 만든 블로그이지만 혹시 궁금한 것이 있으면 성실히 답변 드리도록 하겠습니다.

sudo apt install update && sudo apt upgrade -y && sudo apt autoremove

우선 배포판 설치가 금방 끝났으면 제일 먼저 역시 update를 해줍니다.

sudo apt install curl wget dpkg git zip net-tools \
  btop neofetch cpufetch mlocate zsh \
  nnn exa duf tldr bat neovim

배포판 설치 다음은 필요한(?) 패키지들을 설치해 줄 거에요. 설치한 패키지들이 어디에 쓰이는 지는 따로 포스팅 하겠습니다. 언젠가 어디선가 반드시(?) 필요한 패키지들이니 우선 무지성으로 설치해 줍시다.

패키지 설치가 끝났으면 oh-my-zsh를 설치하고 주로 사용하는 powerlevel10k 테마를 적용 후 각종 alias 설정까지 마치면 리눅스를 쓸 준비(?)가 될 것입니다. 플러그인은 syntax-highlighting 과 autosuggestions 두개만 우선 설치하겠습니다. (사실 나머지는 뭐가 좋은게 있는지 잘 모릅니다 😇) 플로그인이나 패키지들을 하나하나 설치하는 맛도 있지만 vi ~/.zshrc와 source 명령어는 가능한한 적게 치기 위해 우선 모두 준비를 해두고 설정은 마지막에 한번에 하도록 하겠습니다.

▶️ oh-my-zsh는 zsh에 테마나 플러그인등을 사용하기 위한 프레임워크입니다. 이게 없으면 그냥 bash를 쓰는 것도 나쁘지 않습니다.
▶️ 설치는 wget으로 설치 파일을 다운로드 받아서 사용하는 방식입니다. 이후 업데이트가 있을 때에는 로그인 할 때 업데이트 할 것인지를 물어보니 자연스럽게 [엔터]로 진행 하시면 됩니다.
▶️ powerlevel10k 테마는 개인적으로 좋아하는 테마입니다. 혹시 다른 테마가 궁금 하시면 여기로(Themes · ohmyzsh/ohmyzsh Wiki · GitHub) 가셔서 구경하시고 맘에 드는 것으로 설치하셔서 설정하시면 됩니다.

# oh-my-zsh 설치
sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

# powerlevel10k 테마 설치
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes/powerlevel10k

# zsh-syntax-highlighting
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

# zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

모두 다운로드 받아버립시다!! (github 만세!!!)

nvim ~/.zshrc

설정파일(.zshrc)을 조져봅시다. 저는 nvim을 좋아해서 nvim을 썼습니다.

.zshrc 전문을 다 보여 드리고 싶지만 주석 부분은 삭제하고 설정 부분만 쓰겠습니다. 필요하신 분은 그냥 다 지우고 복사해서 쓰셔도 됩니다. (수정한 부분은 하이라이트해 두었습니다)

# powerlevel10k를 잘 설치하면 나오는 것
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
  source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
fi

export ZSH="$HOME/.oh-my-zsh"

# 테마의 경로를 입력해 줍니다
ZSH_THEME="powerlevel10k/powerlevel10k"

# 플러그인도 추가해 줍니다
plugins=(
  git
  zsh-syntax-highlighting
  zsh-autosuggestions
)

source $ZSH/oh-my-zsh.sh

# alias 명령어 입니다 필요한 부분만 추가해 줍시다
alias ls="exa"
alias ll="exa -lhg -F"
alias lt="exa --tree"
alias cc="clear"
alias vim="nvim"
alias vi="nvim"
alias uu="sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y"
alias wt="curl wttr.in/busan\?lang=ko"
alias cat="batcat"
alias man="tldr"

# sudo vi 를 사용하기 위한 함수
function sudo() {
  if [[ $1 == "vi" ]]; then
    command sudo nvim "${@:2}"
  else
    command sudo "$@"
  fi
}

# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh

.zshrc 파일을 적용하기 위한 준비가 끝났습니다.

다 하셨으면 :wq 로 저장하고 나오시면 됩니다. (복붙하지 않으셨다면 오타에 주의합시다)

source ~/.zshrc

저장하고 나와도 이걸 해주기 전엔 이전과 같습니다. 왜냐하면 source 명령어로 설정 값을 zsh에 적용해줘야 하기 때문이죠. source명령어가 귀찮다 하시는 분은 logout 했다가 다시 로그인 하셔도 되고, 혹시 시간이 많으시면 재부팅을 하셔도 됩니다. 돈이 많으시다면 저한테 메로나 하나만…

모든 것이 한번에 적용 되었습니다. 감격스럽네요
ls 명령어도 ll 명령어도 lt 명령어도 한번 입력해보세요 🙂 아래처럼 아름(?)답게 나오면 성공입니다.

출처: 내컴퓨터, 해내고야 말았지 않겠습니까?

이후 포스팅은 두번째, 세번째 하는 일들도 준비해보겠습니다. 🙏

cheapest tech log.