Menginstal I2P menggunakan Docker
Cara memulai dengan sangat cepat
Jika Anda hanya ingin mencoba I2P dengan cepat atau menggunakannya di jaringan rumah, ikuti langkah-langkah ini:
- Buat dua direktori "i2pconfig" dan "i2ptorrents"
- Salin teks berikut dan simpan dalam file "docker-compose.yml".
- Jalankan "docker-compose up"
- Buka browser lalu ketik http://127.0.0.1:7657 untuk menyelesaikan wizard pengaturan.
version: "3.5"
services:
i2p:
image: geti2p/i2p
network_mode: host
volumes:
- ./i2pconfig:/i2p/.i2p
- ./i2ptorrents:/i2psnark
Perhatikan bahwa pendekatan cepat ini tidak disarankan untuk server produksi di remote server. Silakan baca dokumen ini untuk informasi lebih lanjut.
Membangun image I2P
Ada image I2P yang tersedia di DockerHub . Jika Anda tidak ingin menggunakan image tersebut, Anda dapat membangunnya image sendiri:
docker build -t i2p .
Menjalankan container
Volumes
Container membutuhkan volume untuk data konfigurasi yang akan dipasang. Secara opsional, Anda dapat memasang volume terpisah untuk unduhan torrent ("i2psnark"). Lihat contoh di bawah ini.
Penggunaan memori
By default the image limits the memory available to the Java heap to 512MB. You can override that with the JVM_XMX
environment variable.
Ports
Ada beberapa port yang diekspos oleh image. Anda dapat memilih mana yang akan dibuka tergantung pada kebutuhan spesifik Anda.
Port | Interface | Uraian | TCP/UDP |
---|---|---|---|
4444 | 127.0.0.1 | Proxy HTTP | TCP |
4445 | 127.0.0.1 | Proxy HTTPS | TCP |
6668 | 127.0.0.1 | Proxy IRC | TCP |
7654 | 127.0.0.1 | Protokol I2CP | TCP |
7656 | 127.0.0.1 | SAM Bridge TCP | TCP |
7657 | 127.0.0.1 | Router Console | TCP |
7658 | 127.0.0.1 | Situs I2P | TCP |
7659 | 127.0.0.1 | SMTP Proxy | TCP |
7660 | 127.0.0.1 | Proxy POP3 | TCP |
7652 | LAN interface | UPnP | TCP |
7653 | LAN interface | UPnP | UDP |
12345 | 0.0.0.0 | Protokol I2NP | TCP dan UDP |
Anda mungkin setidaknya menggunakan Router Console (7657) dan HTTP Proxy (4444). Jika Anda ingin I2P dapat menerima koneksi dari internet, dan karenanya tidak ada firewall, buka port Protokol I2NP (12345) - tetapi pastikan Anda mempublikasikan ke port acak yang berbeda, jika tidak, orang lain mungkin dapat menebak Anda sedang menjalankan I2P dalam image Docker.
Jaringan
Panduan praktik terbaik untuk penerapan cloud berada di luar cakupan dokumen ini, namun secara umum Anda harus mencoba meminimalkan jumlah port yang dibuka, sambil hanya mengekspos port I2NP ke internet. Itu berarti bahwa layanan dalam daftar di atas yang terikat pada 127.0.0.1 (yang termasuk router console) perlu diakses melalui metode lain seperti tunneling SSH atau dikonfigurasi secara manual untuk binding ke interface yang berbeda.
Contohnya:
Berikut adalah contoh container yang memasang i2phome
sebagai direktori home, i2ptorrents
untuk torrent, dan membuka HTTP Proxy, IRC, Router Console, dan Protokol I2NP. Ini juga membatasi memori yang tersedia untuk JVM hingga 256MB.
docker run \
-e JVM_XMX=256m \
-v i2phome:/i2p/.i2p \
-v i2ptorrents:/i2psnark \
-p 4444:4444 \
-p 6668:6668 \
-p 7657:7657 \
-p 54321:12345 \
-p 54321:12345/udp \ # I2NP port needs TCP and UDP. Change the 54321 to something random, greater than 1024.
i2p:latest