Docker: Aan de slag
Snelle, veilige remote Docker-beheer met Stackhero for Docker
Welkom bij de Stackhero-documentatie
Stackhero biedt een gebruiksklaar Docker cloud CaaS (Containers as a Service) platform, ontworpen voor snelle en betrouwbare containerdeployments:
- Zet uw containers direct in productie met slechts één
docker-compose up. Er is geen extra configuratie nodig: start gewoon uw containers.- Kies uw eigen domeinnaam, automatisch beveiligd met HTTPS (bijvoorbeeld: https://api.uw-bedrijf.com, https://www.uw-bedrijf.com of https://backoffice.uw-bedrijf.com).
- Profiteer van hoge prestaties en sterke beveiliging op een privé, dedicated infrastructuur.
- Voer updates uit met één klik voor eenvoudige, moeiteloze onderhoud.
Uw containers kunnen binnen ongeveer vijf minuten live in productie zijn. Stackhero beheert de infrastructuur, updates en beveiliging voor u, zodat u zich kunt richten op het leveren van uw applicaties. Lees meer over Docker CaaS cloud hosting.
Docker CLI op afstand gebruiken
Docker CLI moet op uw computer geïnstalleerd zijn. Als u deze nog niet heeft geïnstalleerd, kunt u deze downloaden via de officiële Docker-site: Docker Desktop.
Met Stackhero for Docker beheert u uw containers op afstand via de Docker CLI, precies zoals u dat lokaal gewend bent. Uw vertrouwde workflow blijft behouden, maar u voert uw commando’s nu direct uit op uw productieklare Docker-server: veilig en efficiënt.
Docker "contexts" maken dit mogelijk. Contexts geven aan de Docker CLI door waar uw commando’s naartoe moeten: naar uw lokale Docker-daemon of naar uw Stackhero for Docker-instantie. Wisselen tussen contexts gaat snel en soepel.
Docker-certificaten installeren
Om veilig verbinding te maken met uw Stackhero for Docker-instantie, moet u de bijbehorende certificaten op uw computer installeren. Deze certificaten regelen authenticatie en encryptie, zodat uw verbinding privé en beschermd blijft.
Gebruik het volgende commando om de certificaten te downloaden en te installeren:
# HOST is de domeinnaam van uw Docker-instantie (<XXXXXX>.stackhero-network.com).
# SERVICE_ID is uw Stackhero service ID.
# CERTIFICATES_PASSWORD is het wachtwoord dat u heeft ingesteld in uw Docker-configuratie op het Stackhero-dashboard.
(export HOST="<XXXXXX>.stackhero-network.com"
export SERVICE_ID="<SERVICE_ID>"
export CERTIFICATES_PASSWORD="<CERTIFICATES_PASSWORD>"
cd /tmp/ \
&& curl -o certificates.tar https://docker:$CERTIFICATES_PASSWORD@$HOST/stackhero/docker/certificates.tar \
&& tar -xf certificates.tar \
&& (docker context rm -f $HOST 2> /dev/null || true) \
&& docker context create $HOST \
--description "$SERVICE_ID ($HOST)" \
--docker "host=tcp://$HOST:2376,ca=ca.pem,cert=cert.pem,key=key.pem")
Dit commando maakt een Docker-context aan met de naam van uw service-domein. U kunt alle beschikbare contexts bekijken met:
docker context ls
Als u het domein van uw service wijzigt, veranderen uw certificaten. U moet ze dan opnieuw installeren om weer veilig te kunnen verbinden.
Docker-containers op afstand uitvoeren
Standaard toont docker ps de containers op uw lokale machine. Bijvoorbeeld, als u het volgende uitvoert:
docker run --rm alpine wget -q -O - ifconfig.me
krijgt u uw lokale publieke IP-adres te zien, omdat de container lokaal draait.
Om op afstand te werken, schakelt u de Docker-context om naar uw Stackhero for Docker-instantie:
docker context use <XXXXXX>.stackhero-network.com
Vanaf nu worden alle Docker CLI-commando’s uitgevoerd op uw remote Docker-server. Als u nu hetzelfde IP-controle-commando uitvoert:
docker run --rm alpine wget -q -O - ifconfig.me
ziet u het publieke IP-adres van uw Stackhero for Docker-instantie. Dit bevestigt dat uw containers op de remote server draaien.
Om terug te schakelen naar uw lokale Docker-daemon, voert u uit:
docker context use default
Wanneer u een volume mount in een remote container, zijn de beschikbare bestanden afkomstig van de remote server, niet van uw lokale machine. Bijvoorbeeld,
docker run -it -v ${PWD}:/mnt alpinemount de remote directory, niet uw huidige lokale directory.
Deployen met Docker Compose
Docker Compose gebruikt ook de actieve Docker-context. Zodra u de context instelt op de remote instantie met:
docker context use <XXXXXX>.stackhero-network.com
worden alle Docker Compose-commando’s uitgevoerd op uw remote server. Zo kunt u multi-container applicaties net zo eenvoudig uitrollen als lokaal, maar dan direct in uw productieomgeving.
Wisselen van context met
docker contextis handig voor interactief gebruik. Voor scripts of Makefiles biedt deDOCKER_CONTEXT-omgevingvariabele meer controle. Meer informatie vindt u in onze geavanceerde documentatie.
Voor meer informatie over Docker-contexts kunt u terecht in de officiële Docker-documentatie over contexts.