# Установка docker и Portainer в lxc контейнере proxmox

Использование Proxmox и lxc контейнеров в нем, позволяет оптимизировать использование ресурсов и повышает отказоустойчивость инфраструктуры, по сути lxc контейнер является сильно "облегченной" операционной системой, на которую можно установить только те пакеты которые необходимы. Но сама по себе идея работы lxc контейнера, не является новой, одним из самых популярных аналогов lxc контейнеров является docker. Так как я не ограничен никакими рамками в использовании ПО отказываться от docker и docker-compose я не вижу никакого смысла.  
Proxmox и его lxc контейнеры никак не ограниченны в установке ПО поэтому мне ничего не мешает выделить ресурсы ноды под использование другой контейнерной структуры.

Portainer — это открытый веб-интерфейс для управления контейнерами Docker, который упрощает работу частично освобождая от использования командной строки.

В гайде описан процесс установки в lxc контейнер docker и portainer

#### Создание LXC контейнера

Процесс создания lxc контейнера описан [тут](https://bookstack.redpunk.net/books/ispolzuemoe-po-i-instrukcii-po-ego-ustanovke/page/sozdanie-lxc-konteinera-proxmox "Создание LXC контейнера proxmox")

Нам необходимо создать контейнер с такими настройками:

- **General**: Hostname=portainer-docker
- **Template**: Ubuntu 22.04 или Debian 12
- **Disks**: 8GB
- **CPU**: 2 cores
- **Memory**: 2048 MB

Далее необходимо подключиться к нему через [ssh](https://bookstack.redpunk.net/books/ispolzuemoe-po-i-instrukcii-po-ego-ustanovke/page/podkliucenie-k-node-konteineru-ili-virtualnoi-masine-proxmox-cerez-ssh "Подключение к ноде, контейнеру или виртуальной машине proxmox через ssh")

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

```bash
apt update && apt install curl -y
curl -fsSL https://get.docker.com | sh
systemctl enable --now docker
```

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

```
docker volume create portainer_data
docker run -d -p 9000:9000 --name portainer --restart always \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v portainer_data:/data \
  portainer/portainer-ce:latest
```

Доступ http://&lt;ip lxc контейнера&gt;:9000