Uygulama

Linux ile Docker’da ZeroTier nasıl kullanılır?

 

ZeroTier, kullanıcıların “modern, güvenli, çok noktalı sanallaştırılmış ağ” oluşturmasına olanak tanıyan etkileyici bir yazılımdır.  Çok çeşitli uygulamalara sahiptir ancak öne çıkan kullanımlarından biri, daha kolay bağlantıyı kolaylaştırmak için onu Docker konteynerlerine entegre etmesidir.  ZeroTier’ı Docker konteynerlerinize nasıl entegre edeceğinize dair bir kılavuzu burada bulabilirsiniz.

 

Hero image for ZeroTier

ZeroTier Docker dosyanızı nasıl oluşturabilirsiniz?

ZeroTier’ı Docker’a entegre etmek istiyorsanız özel bir Docker görüntüsü oluşturmanız gerekir.  Bu süreç, görüntüler oluşturmak için tarifler veya oyun kitapları (Ansible’a benzer) gibi davranan Dockerfiles’ın kullanılmasını içerir.

Başlamak için bir terminal penceresi açın.  Ardından mkdir komutunu kullanarak “zerotier-container” adlı bir klasör oluşturun.  Bu dizin projenizi düzenli tutmanıza yardımcı olacaktır.

mkdir -p zerotier-container

cd ~/zerotier-container

Dizininiz kurulduktan sonra boş bir “Dockerfile” oluşturmak için touch komutunu kullanın.  Bu dosyayı rehberin ilerleyen kısımlarında dolduracağız ancak şimdilik boş kalacak.

touch Dockerfile

Next, open the newly created “Dockerfile” in the Nano text editor.

nano -w ~/zerotier-container/Dockerfile

Docker dosyasına aşağıdaki kodu ekleyin.  Bu kod, temel bir görüntü kurulumunu özetlemektedir: ZeroTier’ın kurulu olduğu bir Ubuntu sistemi.  Bu yalnızca bir örnektir ve bunu özel gereksinimlerinize göre ayarlamaktan çekinmeyin.

The Dockerfile for the custom ZeroTier image.

# Use an official Ubuntu as a parent image
FROM ubuntu:latest

# Avoid prompts from apt
ENV DEBIAN_FRONTEND=noninteractive

# Install ZeroTier
RUN apt-get update && \
    apt-get install -y curl gnupg && \
    curl -s https://install.zerotier.com | bash

# Ensure the ZeroTier service starts automatically
CMD service zerotier-one start && tail -f /dev/null

Kodu Dockerfile’ınıza girdikten sonra, Ctrl + O tuşlarına ve ardından çıkmak için Ctrl + X tuşlarına basarak değişikliklerinizi Nano metin düzenleyicisine kaydedin.

Nano kapalıyken ve Docker dosyanız kaydedildiğinde, başarıyla bir ZeroTier Docker dosyası oluşturdunuz.  Bu Docker dosyasını daha sonra değiştirmeniz gerekirse, onu Nano’da yeniden açın ve ek komutlarınızı ekleyin.

ZeroTier Docker Görüntünüzü nasıl oluşturabilirsiniz?

ZeroTier Docker dosyanızı yazdınız ve aşağıdaki görevleri yerine getirecek şekilde ayarlandı: Ubuntu’yu en son paketlerle güncellemek, “curl” paketini yüklemek ve ZeroTier’ı yüklemek.  Şimdi imajı Dockerfile’a göre oluşturmanın zamanı geldi.

Oluşturma, özellikle modern bir Linux sisteminde oldukça hızlı bir süreçtir.  Başlamak için bir terminal başlatın.  Terminal pencereniz açıldığında Docker dosyasını içeren klasöre girmek için cd ~/zerotier-container komutunu kullanın.

cd ~/zerotier-container

Buradan docker build komutunu kullanarak Docker imajını oluşturabilirsiniz.  Bu oluşturma süreci gerçek zamanlı olarak görülebilecek ve ilerlemesini doğrudan terminalden izlemenize olanak tanıyacak.  Derleme başarısız olursa, yaptığınız değişiklikleri geri alın ve komutu yeniden çalıştırın.

Docker is building the custom ZeroTier image.

docker build -t zerotier-container .

ZeroTier Docker Container’ınızı nasıl çalıştırabilirsiniz?

Görüntü oluşturulduktan sonra ZeroTier Docker kapsayıcınızı dağıtmaya hazırsınız.  Dağıtım iki şekilde yapılabilir: docker run komutunu kullanarak veya bir Docker Compose dosyası oluşturarak.  Bu kılavuz, uzun komutlar kullanmaktan daha yönetilebilir bir yaklaşım sunduğu için Docker Compose’a odaklanacaktır.

Öncelikle ~/zerotier-container/ dizininde olduğunuzdan emin olun.  Ardından touch komutunu kullanarak docker-compose.yml adında yeni bir dosya oluşturun:

touch docker-compose.yml

Boş Docker Compose dosyasını oluşturduktan sonra Nano ile açın:

nano docker-compose.yml

Aşağıdaki yapılandırmayı ekleyin:

The compose file for the custom ZeroTier container.

version: '3.8'
services:
  my-zerotier-container:
    image: zerotier-container
    container_name: my-zerotier-container
    devices:
      - "/dev/net/tun:/dev/net/tun"
    cap_add:
      - NET_ADMIN
      - SYS_ADMIN
    restart: unless-stopped

Ctrl + O’ya, ardından Enter’a basarak dosyayı kaydedin ve Ctrl + X ile Nano’dan çıkın. Aşağıdaki komutla Docker Compose’u kullanarak kapsayıcıyı dağıtın:

sudo docker compose up -d

The docker compose up -d komut, “my-zero tier-container” adlı kabı arka planda çalıştırarak daemon modunda oluşturacak ve başlatacaktır.

Deploying the ZeroTier image to a container.

Kabı ve oluşturulan ağları durdurmak ve kaldırmak için ~/zerotier-container/ dizinindeyken aşağıdaki komutu kullanın:

sudo docker compose down

ZeroTier Docker Container’ınızı ağa nasıl bağlayabilirsiniz?

Artık konteyneriniz ZeroTier kurulu olarak çalışır durumda olduğuna göre, bir sonraki adım onu ​​ağınıza birleştirmektir.  Aşağıdaki komutla kapsayıcınızın komut konsoluna erişerek başlayın:

docker exec -it my-zerotier-container bash

Yukarıdaki komutun yürütülmesi, konteynerin terminal arayüzünde oturum açmanızı sağlayacaktır.  Ardından, Ağ Kimliğinizi bulmak için ZeroTier’ı bir web tarayıcısında açın.  Ağ Kimliğinizi aldıktan sonra, aşağıdakileri çalıştırarak kapsayıcıyı ağınıza eklemek için bunu kullanın:

zerotier-cli join YOUR_NETWORK_ID

YOUR_NETWORK_ID’yi ZeroTier ağınızın gerçek kimliğiyle değiştirin.

Ağa başarıyla katıldıktan sonra aşağıdakileri gerçekleştirerek bağlantı ve ağ ayrıntılarını doğrulayın:

zerotier-cli listnetworks

Bu komut, konteynerin bağlı olduğu ağların bir listesini görüntüleyerek birleştirme işleminin başarılı olduğunu onaylamanıza olanak tanır.

Yazının orijinalini buradan okuyabilirsiniz.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Skip to content