Problemen oplossen
Als je een probleem hebt met je applicatie, overweeg dan het volgende en probeer het uit te sluiten:
- Problemen met connectiviteit database.
- Omgevingsvariabelen:
- Onjuiste variabelen.
- Speciale tekens.
- Base64-gecodeerde variabelen.
- Connectiviteitsproblemen met externe applicaties.
- Verkeerde Start commando’s. Bijvoorbeeld als je
yarn
probeert te gebruiken terwijl alleennpm
beschikbaar is, of een package.json bestand zonder het vereiste startscript. - Bij het aaneenschakelen van Start commando’s moet het laatste commando een webservice starten. Hierdoor blijft de container draaien en luisteren naar inkomende verbindingen.
- Een ongeldige pakketnaam in package.json. Gebruik bijvoorbeeld geen “js” of “node” in de naam. Zie voor meer details de specifieke afhandeling van npm’s package.json in de npm Docs.
- Problemen met toestemmingen.
- Ontbrekende bestanden.
Algemene stappen voor probleemoplossing
- Als je applicatie is gemaakt met een Dockerfile, controleer dan of Bash is geïnstalleerd in de container. Meestal bevat het basisimage (bijv. Ubuntu) een shellpakket en zal het standaard werken. In sommige meer gestroomlijnde containers is het shellpakket mogelijk niet inbegrepen en moet je het toevoegen. De basisimage bepaalt hoe je het shell pakket toevoegt:
- Alpine:
apk add bash
- Ubuntu/Debian:
apt install bash
- Fedora:
dnf install bash
- Alpine:
- Verander het Start commando in
sleep 9999
. Dit zal de pod in een draaiende staat brengen waar je interactie mee kunt hebben via de Web terminal. Bewerk het webproces om de startopdracht te wijzigen (Processen > Runtimeprocessen > Webproces > Bewerk proces). - Open de webterminal.
- Controleer de omgevingsvariabelen. Voer in de webterminal
printenv
in en controleer of de omgevingsvariabelen zijn wat je ervan verwacht. - Voer de applicatie handmatig uit. Probeer de applicatie handmatig uit te voeren met debug-opties ingeschakeld. Het commando om dit te doen kan variëren, afhankelijk van de applicatie. Raadpleeg voor meer details de documentatie van de taal of pakketbeheerder waarmee je applicatie is gebouwd.