# Portainer.io

## Подготовка виртуальной машины

Установка производится на lxc машину, с установленным на неё Debian 12 и включенными keyctl, nesting и fuse в features:

<figure class="image" id="bkmrk-">![](https://book.accounter.org/uploads/images/gallery/2023-07/embedded-image-vcosivmw.png)</figure>Чтобы попасть на неё без пароля с хостовой машины:

```
pct enter 181
```

Возможно вам понадобится включить ключи ssh-rsa в /etc/ssh/sshd\_config

```
PermitRootLogin prohibit-password
PubkeyAcceptedKeyTypes=+ssh-rsa
```

Устанавливаем yandex репозитории (выше скорость загрузки пакетов):

<mark class="pen-red">/etc/apt/sources.list</mark>

```plaintext
deb https://deb.debian.org/debian bookworm main
deb-src https://deb.debian.org/debian bookworm main

deb https://deb.debian.org/debian bookworm-updates main
deb-src https://deb.debian.org/debian bookworm-updates main

deb http://security.debian.org/ bookworm-security main
deb-src http://security.debian.org/ bookworm-security main
```

Обновляем систему, устанавливаем часовой пояс и локали, установим немного софта:

```plaintext
apt update && apt full-upgrade -y
dpkg-reconfigure tzdata
dpkg-reconfigure locales
apt install curl mc sudo curl wget
```

## Установка docker &amp; docker-compose

### Docker

```plaintext
apt -y install apt-transport-https ca-certificates gnupg2 software-properties-common
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
add-apt-repository \
  "deb [arch=amd64] https://download.docker.com/linux/debian \
  $(lsb_release -cs) \
  stable"
apt update
apt -y install docker-ce docker-ce-cli containerd.io fuse-overlayfs
systemctl enable --now docker
```

### Docker-compose

```plaintext
curl -s https://api.github.com/repos/docker/compose/releases/latest | grep browser_download_url | grep docker-compose-linux-x86_64 | cut -d '"' -f 4 | wget -qi -
chmod +x docker-compose-linux-x86_64
mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose
```

## Не запускается lxc

Узнать причину:

```
lxc-start -n 181 -F -lDEBUG -o lxc-181.log
```

В моём случае потребовалось изменить максимальную версию debian тут: /usr/share/perl5/PVE/LXC/Setup/Debian.pm

[![image.png](https://wiki.accounter.org/uploads/images/gallery/2023-08/scaled-1680-/2gLimage.png)](https://wiki.accounter.org/uploads/images/gallery/2023-08/2gLimage.png)

## Portainer.io

```plaintext
docker volume create portainer_data
docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
```

Далее идём на https://your.machine.ip:9443/  
Устанавливаем пароль для admin и заходим в админку portainer  
Чтобы зайти в свой экземпляр (portainer может рулить множеством экземпляров) надо щёлкнуть сюда:

<figure class="image" id="bkmrk--2">![](https://book.accounter.org/uploads/images/gallery/2023-07/embedded-image-ymcysmw6.png)</figure>## Nginx Proxy Manager

### Установка

Попробуем поставить сие программное средство в portainer:

<figure class="image" id="bkmrk--3">![](https://book.accounter.org/uploads/images/gallery/2023-07/embedded-image-ssw3cy4j.png)</figure>ыНазовите его как-нибудь, вставьте содержимое docker-compose.yml в web форму:

<figure class="image" id="bkmrk--4">![](https://book.accounter.org/uploads/images/gallery/2023-07/embedded-image-ba2hmrip.png)</figure>И жмём кнопку в самом низу:

<figure class="image" id="bkmrk--5">![](https://book.accounter.org/uploads/images/gallery/2023-07/embedded-image-mzkhkd2w.png)</figure>Админка будет ожидать вас на 81-ом порту.

```plaintext
Email:    admin@example.com
Password: changeme
```