본문 바로가기

AI

windows 10 wsl2에서 podman 사용하기

반응형

Docker는 데몬이 항상 실행되어야 하는 불편함이 있습니다. 최근에는 표준인 podman을 사용하고 있는 경우가 많아 설치해 보았습니다.

 

1 설치

 

현재 우분투에 기본 패키지로 들어있지 않기 때문에 패키지를 추가하여 설치합니다.

command line에서 wsl을 실행합니다.

$ 프롬프트가 나오면 다음을 실행합니다.

. /etc/os-release
sudo sh -c "echo 'deb http://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/x${NAME}_${VERSION_ID}/ /' > /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list"
wget -nv https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/x${NAME}_${VERSION_ID}/Release.key -O Release.key
sudo apt-key add - < Release.key
sudo apt-get update -qq
sudo apt-get -qq -y install podman
sudo mkdir -p /etc/containers
echo -e "[registries.search]\nregistries = ['docker.io', 'quay.io']" | sudo tee /etc/containers/registries.conf

 

출처 : https://www.redhat.com/sysadmin/podman-windows-wsl2

 

How to run Podman on Windows with WSL2

With the latest Windows Subsystem for Linux (WSL) 2.0 implementation, Podman now works out of the box. Minor changes to a configuration file make Podman more convenient to use. In the upcoming sections, I will document how I ran Podman under WSL2 and what

www.redhat.com

2. 실행

 

다음에 tensorflow등을 실행하려면 다음과 같이 입력하면 됩니다.

podman run -it -p 8888:8888 --name monster_tf -e LANG=ko_KR.UTF-8 -v /mnt/c/users/사용자/Documents/notebooks:/notebooks dash00/tensorflow-python3-jupyter

참고로 /mnt/c/와 /mnt/d등은 기본으로 wsl에서 제공합니다. mount 명령을 실행하면 알수 있습니다.

다음에 실행하려면

podman start -ia monster_tf로 하면 됩니다.

중지는 podman stop monster_tf 입니다.

 

3. cmd에서 바로 실행하기

 

Ubuntu를 기본으로 설정했을 경우입니다.

wsl --exec podman start -ia monster_tf 를 입력하면 바로 실행됩니다.

bash를 하려면 다음과 같이 입력합니다.

wsl --exec podman start monster_tf

wsl --exec podman exec -it monster_tf /bin/bash

 

wsl에서 중지하려면

wsl --exec podman stop monster_tf

입니다.

 

wsl을 멈추려면

wsl --shutdown

이라고 하면 됩니다.

 

4. 기타

 

암호를 설정해서 실행하고자 하면 웹 화면에서 python3 화일을 만들고 다음을 실행합니다.

from IPython.lib import passwd 
passwd()

 

실행해서 나오는 'sha1:xxxxxxxx'을 복사하여 놓습니다.

웹화면에서 터미널을 실행하고 (새로만들기-터미널)

/root/.jupyter/jupyter_notebook_config.py 파일에 복사한 암로를 추가합니다.
c.NotebookApp.password = 'sha1:xxxxxxxx'

한글은 터미널에서 다음과 같이 실행하면 됩니다.

root@host:/notebooks# apt-get update
root@host:/notebooks# apt-get install locales
root@host:/notebooks# locale-gen ko_KR.UTF-8
root@host:/notebooks# locale -a

시간은 아래와 같이 실행하면 됩니다.

root@host:/notebooks# apt-get install tzdata

root@host:/notebooks# tzselect

4: Asia
23: Korea (South)
Asia/Seoul

root@host:/notebooks# ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime

 

사용법은 일반적으로 docker 대신 podman을 이용하면 됩니다.

docker와 유사합니다.

 

추가 : 간혹 아래와 같은 오류가 나오는 경우에는

ERROR [0191] unable to close namespace: "close /proc/2018/ns/user: bad file descriptor"

ps -ef 해서 podman을 kill 하면 됩니다.

 

자세한 사용법은 아래의 사이트를 참조하시면 좋습니다.

https://chhanz.github.io/container/2020/03/02/podman/

 

[Container] Podman 설치 및 사용법

Podman 이란? Red Hat Enterprise Linux 8 / CentOS 8 부터는 Docker 대신 Podman 이라는 도구를 제공합니다. Podman 은 Docker 와 동일하게 단일 노드에서 pod, 컨테이너 이미지 및 컨테이너를 관리합니다. Pod 라고 하는 컨테이너 및 컨테이너 그룹을 관리할 수 있는 libpod 라이브러리를 기반으로 합니다. RHEL 8 Release Note 이번 포스팅에서는 Podman 의 설치 및 기본 사용법에

chhanz.github.io

 

반응형

'AI' 카테고리의 다른 글

Tensor flow용 Dockerfile  (0) 2020.02.13
Docker jupyter notebook 한글 관련  (1) 2020.02.13
jupyter_notebook_config.py  (0) 2020.02.12
nupic 사용법  (0) 2019.03.14