Docker: Wykorzystanie kontekstów Docker w Makefile

Ta dokumentacja jest częścią przewodnika Zaawansowane zastosowania kontekstów. Pełny przewodnik znajdziesz tutaj: Jak używać kontekstów Docker w swoich skryptach.

👋 Witamy w dokumentacji Stackhero!

Stackhero oferuje gotowe do użycia rozwiązanie Docker cloud CaaS (Containers as a Service), które zapewnia wiele korzyści, w tym:

  • Łatwe wdrażanie kontenerów do produkcji za pomocą prostego docker-compose up.
  • Dostosowywana nazwa domeny zabezpieczona HTTPS (na przykład, https://api.twoja-firma.com, https://www.twoja-firma.com, https://backoffice.twoja-firma.com).
  • Optymalna wydajność i solidne zabezpieczenia dzięki prywatnej i dedykowanej VM.
  • Bezproblemowe aktualizacje za pomocą jednego kliknięcia.

Oszczędzaj czas i upraszczaj swoje życie: wystarczy 5 minut, aby wypróbować rozwiązanie Docker CaaS cloud hosting Stackhero i wdrożyć swoje kontenery do produkcji!

Można również ustawić zmienną DOCKER_CONTEXT w Makefile. Oto przykład eksportowania zmiennej i uruchamiania kontenera Docker:

# Makefile
export DOCKER_CONTEXT=<XXXXXX>.stackhero-network.com

getIp:
	docker run --rm alpine wget -q -O - ifconfig.me

Po utworzeniu Makefile, wywołaj polecenie używając:

make getIp

Jeśli napotkasz błąd Makefile: *** missing separator. Stop., upewnij się, że linia docker run [...] zaczyna się od znaku TAB, a nie od spacji.

Można dodatkowo uprościć konfigurację, włączając plik .env w Makefile. To podejście zapewnia scentralizowane zarządzanie ustawieniami środowiska:

# Makefile
include .env
export

getIp:
	docker run --rm alpine wget -q -O - ifconfig.me

Utwórz plik .env z tą zawartością:

DOCKER_CONTEXT=<XXXXXX>.stackhero-network.com

Następnie wykonaj polecenie:

make getIp

Jeśli napotkasz błąd Makefile: *** missing separator. Stop., sprawdź, czy linia docker run [...] zaczyna się od znaku TAB, a nie od spacji.