Linux Containers

From Chorke Wiki
Jump to navigation Jump to search
sudo apt upgrade && sudo apt autoremove
sudo snap install lxd --channel=4.0/stable

Initial Setup

sudo lxd init
:'
Would you like to use LXD clustering? (yes/no) [default=no]: yes
What IP address or DNS name should be used to reach this node? [default=10.20.21.10]: 
Are you joining an existing cluster? (yes/no) [default=no]:   
What name should be used to identify this node in the cluster? [default=ubuntu]: academia
Setup password authentication on the cluster? (yes/no) [default=no]: 
Do you want to configure a new local storage pool? (yes/no) [default=yes]:   
Name of the storage backend to use (btrfs, dir, lvm, zfs) [default=zfs]: 
Create a new ZFS pool? (yes/no) [default=yes]: 
Would you like to use an existing empty block device (e.g. a disk or partition)? (yes/no) [default=no]: 
Size in GB of the new loop device (1GB minimum) [default=25GB]: 100GB
Do you want to configure a new remote storage pool? (yes/no) [default=no]: 
Would you like to connect to a MAAS server? (yes/no) [default=no]: 
Would you like to configure LXD to use an existing bridge or host interface? (yes/no) [default=no]: 
Would you like to create a new Fan overlay network? (yes/no) [default=yes]: 
What subnet should be used as the Fan underlay? [default=auto]: 
Would you like stale cached images to be updated automatically? (yes/no) [default=yes] 
Would you like a YAML "lxd init" preseed to be printed? (yes/no) [default=no]: 
'

Instance Management

lxc image list images: ubuntu amd64
lxc image list images: ubuntu arm64
lxc image list images: ubuntu
lxc launch images:alpine/3.15 academia --vm
lxc launch images:alpine/3.15 academia
lxc restart academia
lxc start academia
lxc stop academia
lxc launch images:opensuse/15.3 agronomy --vm
lxc launch images:opensuse/15.3 agronomy
lxc restart agronomy
lxc start agronomy
lxc stop agronomy
lxc launch images:apertis/v2020 robotics
lxc launch images:apertis/v2021 robotics
lxc restart robotics
lxc start robotics
lxc stop robotics
lxc list -c nsS
lxc list
lxc exec academia -- su --login chorke
lxc exec academia -- /bin/sh
lxc exec academia sh
lxc console academia
download from container to host
lxc file pull academia/etc/hosts ./

upload into container from host
lxc file push -r ~/.ssh/ academia/root/.ssh/
lxc file push ~/.ssh/known_hosts academia/root/.ssh/
lxc stop academia && lxc delete academia
lxc delete academia --force
manipulate remote images
lxc image refresh ubuntu:21.04
lxc image delete ubuntu:21.04
lxc image show ubuntu:21.04
lxc image edit ubuntu:21.04
manipulate local images
lxc image delete 97c97f4a1d2d
lxc image delete a7b1071c0609

Knowledge

lxc list
journalctl -xe
snap revert lxd
snap list --all lxd
sudo snap remove lxd
journalctl -u snap.lxd.daemon
systemctl reload snap.lxd.daemon
systemctl status snap.lxd.daemon
sudo snap install lxd --channel=3.0/stable
sudo snap install lxd --channel=4.0/stable
sudo snap install lxd --channel=5.0/stable
mount | grep cgroup
systemd.unified_cgroup_hierarchy=0
cat /var/snap/lxd/common/lxd/logs/lxd.log
sudo apt update  && sudo apt list --upgradable 
sudo apt upgrade && sudo apt autoremove
sudo apt install snapd
sudo snap install lxd --channel=4.0/stable
sudo snap install lxd --channel=3.0/stable
sudo snap install lxd
sudo lxd.migrate
sudo lxd init --auto
sudo lxd init
lxc remote list
lxc image  list
lxc image list images: alpine
lxc image list images: alpine arm64
lxc image list images: alpine amd64
lxc image list images: debian
lxc image list images: debian arm64
lxc image list images: debian amd64
lxc image list images: ubuntu
lxc image list images: ubuntu arm64
lxc image list images: ubuntu amd64
sudo ls -la /var/snap/lxd/common/lxd/images/
sudo cat /var/snap/lxd/common/lxcfs.pid
sudo systemctl stop snap.lxd.daemon
sudo apt install zfsutils-linux
sudo lxc --verbose --debug list
sudo lxd --debug --group lxd
sudo ps fauxww | grep lx
sudo zfs list -t all
sudo ps fauxww
sudo groupadd --system lxd
sudo usermod -G lxd -a $USER
newgrp lxd

References