I2pd docker
Установка и настройка i2pd через контейнеризацию Docker
Получение образа Docker
Есть два варианта получения образа. Самостоятельная сборка образа и загрузка из регистра hub.docker.com
Через регистр hub.docker.com
Просто выполните в cli:
docker pull purplei2p/i2pd:latest
Проверьте что образ загрузился:
docker image ls
Самостоятельная компиляци i2pd и сборка образа Docker
Загрузите репозиторий i2pd:
git clone https://github.com/PurpleI2P/i2pd.git
Переместите каталог с Dockerfile
в ваш рабочий каталог:
mv ./i2pd/contrib/docker ./
Перейдите в него:
cd ./docker
Запустите сборку и компиляцию:
docker buildx build -t i2pd:latest .
Проверьте наличие образа:
docker image ls
Создание файла конфигурации compose
Для запуска конетейнера при помощи compose файла, можно воспользоваться этой конфигурацией. При запуске будет создан volume
под именем *i2pd*.
docker-compose.yml
:
version: '3.9' networks: i2pd: name: i2pd volumes: i2pd: name: i2pd services: i2pd: image: i2pd:latest container_name: i2pd restart: unless-stopped ports: - "127.0.0.1:7070:7070/tcp" - "127.0.0.1:4444:4444/tcp" - "127.0.0.1:4447:4447/tcp" - "127.0.0.1:7650:7650/tcp" networks: - i2pd volumes: - /etc/localtime:/etc/localtime:ro - i2pd:/home/i2pd/data
Создайте рабочий каталог в котором будет хранится файл docker-compose.yml
:
mkdir /opt/i2pd-dockerized && cd /opt/i2pd-dockerized
Создайте в нем файл docker-compose.yml
и скопируйте в него конфиг приведенный выше:
touch /opt/i2pd-dockerized/docker-compose.yml
Запуск контейнера через compose
Запустите контейнер находясь в рабочем каталоге:
docker compose up -d
Проверка работоспособности контейнера
Удостоверьтесь что контейнер в рабочем состоянии:
docker stats
При необходимости посмотрите логи:
docker compose logs i2pd
Проверьте что у вас локально прослушиваются порты которые были проброшены из контейнера:
ss -tnl src :7070 ss -tnl src :4444 ss -tnl src :4447
Зайдите на web консоль управления через браузер:
http://127.0.0.1:7070/
Управление контейнером
Остановка:
docker compose stop
Удаление:
docker compose down
Редактирование конфигурации:
vim /var/lib/docker/volumes/i2pd/_data/i2pd.conf