Docker도 좋지만 LXD도 4~profile로 즐길 수 있어요~
둘 다 하기 힘들죠?
사실 이것은 LXD의 프로필을 사용하면 자동화할 수 있다.
얼른 해보자.
제작 안내
저도 독학으로 배웠기 때문에 정확한지 모르겠지만 프로필로 용기 자체가 주위의 초기 값을 설정하는 것을 이해합니다.
겸사겸사 말하지 않아도 아래처럼default의 초기 설정이 있어야 하며, 아무것도 지정하지 않으면 기본적으로 이해한다.
default
$ lxc profile show default
config: {}
description: Default LXD profile
devices:
eth0:
name: eth0
network: lxdbr0
type: nic
root:
path: /
pool: default
type: disk
name: default
used_by:
- /1.0/instances/gui
하지만 실제 인상에 따라 클라우드-iit도 대응할 수 있어 편리하다.그림% 1개의 캡션을 편집했습니다.
Docker Compose 같은 건 생각만 해도 이해하기 쉽죠?
백문이 불여일견이니, 최초로 제작된 데스크톱 환경과 LXD에서 Docker를 사용할 수 있는 프로필을 서둘러 만들어보자.
좀 길긴 하지만 복사일 뿐이야
lxc profile create myProfile
에 구성 파일 생성lxc profile edit myProfile << EOF
config:
security.nesting: true
security.privileged: true
user.user-data: |
#cloud-config
timezone: Asia/Tokyo
locale: ja_JP.utf8
write_files:
- content: |
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
User=ubuntu
PAMName=login
PIDFile=/home/ubuntu/.vnc/%H%i.pid
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/bin/vncserver %i -geometry 1920x1080 -depth 24
ExecStop=/usr/bin/vncserver -kill %i
[Install]
WantedBy=multi-user.target
path: /etc/systemd/system/vncserver@:1.service
package_upgrade: true
packages:
- gnupg
- wget
- lxde
- tightvncserver
- docker.io
runcmd:
- wget -q https://www.ubuntulinux.jp/ubuntu-ja-archive-keyring.gpg -O- | apt-key add -
- wget -q https://www.ubuntulinux.jp/ubuntu-jp-ppa-keyring.gpg -O- | apt-key add -
- wget https://www.ubuntulinux.jp/sources.list.d/focal.list -O /etc/apt/sources.list.d/ubuntu-ja.list
- apt update -y
- apt upgrade -y
- apt install -y ubuntu-defaults-ja
- systemctl enable vncserver@:1
EOF
네, 이렇게 해서 my Profile이라는 프로필 내용을 만들었습니다. 단지 첫 번째와 두 번째 보도 내용을 프로필 형식으로 바꿨을 뿐입니다.잘 됐는지 확인하려면 아래 명령을 입력하면 설정 내용이 표시됩니다
lxc profile show myProfile
그럼 이 프로필을 적용한 컨테이너를 시작합시다.기존에 만든 용기와 다른 이름을 지으려고 gui라는 컨테이너로 만들었다.
lxc launch images:ubuntu/21.04/cloud gui -p default -p myProfile
네, 됐습니다.이것만 있으면 거의 다 된다.
launch에서 -p로 만든 프로필을 지정할 수 있습니다
첫 기사 때랑 시동 거는 거랑 이름이 좀 다르죠?
이미지 이름 뒤에/cloud을 붙이는 게 이번에 중요한cloud-init에 대응하는 이미지입니다.
다른 것도 여러 가지가 있으니 클라우드로 LXDUI의 원격 이미지를 집중적으로 확인해 보세요.
한 잔 있네!
참, 콘솔이 곧 돌아오는 게 이상하죠?
수동으로 만들었지만 앱도 꽤 오래 걸렸죠?
네, 사실 시동은 끝났지만 지금 필사적으로 클라우드-init군이 설정한 내용을 하고 있어요.
그게 끝날 때까지 기다려야 하니까 다음 지령이 끝날 때까지 기다려주세요!
자꾸만......하지만 지금 노력하고 있다는 증거니까 서두르지 말고 BGM을 달아보세요.
머지않아 이런 일이 발생할 것이다
lxc exec gui -- cloud-init status --wait
돈이라면 성공하면 끝이니까 다음에 가자우선 설치가 끝났기 때문에 vnc로 연결된 비밀번호를 설정해야 합니다
status: done
이렇게 PW를 설정하면 시동이 걸립니다.VNC 고객gui에서5901을 연결해 보세요.
잘 됐다!
첫 기사에서 했던 일이 쉬워졌네요!
이제 두 번째 보도에서 도커의 동작을 보도록 하겠습니다.
$ lxc exec gui -- su ubuntu -c 'vncserver :1 -geometry 1920x1080 -depth 24'
나왔어요.아니오, 편리한 사회를 위해 건배합시다.🍾
그래서 밑바닥 아저씨가 즐기기 위해 프로필을 사용했을 때의 비망록이다.
그럼 Linux가 살았으면 좋겠어요.
딸꾹질하다
Reference
이 문제에 관하여(Docker도 좋지만 LXD도 4~profile로 즐길 수 있어요~), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/tantan_tanuki/articles/72ac0f92588222텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)