Help! Mijn PHP cli code stopt met de melding ‘Killed’ in Docker

Voor een project moest ik onlangs een stukje code schrijven dat via SOAP een behoorlijk grote dataset moest ophalen, verwerken en in een database moest opslaan. Om zowel op kantoor als thuis gemakkelijk te kunnen ontwikkelen had ik besloten om een ontwikkelomgeving op te zetten in Docker.

In eerste instantie testte ik mijn code met kleinere datasets. Alles leek prima te werken, totdat de code klaar was om te testen met de grote datasets. Op de één of andere manier werd mijn code, die command line draaide, afgebroken met de melding Killed.

Na wat Googlen leek het erop dat ik meer geheugen gebruikte dan er beschikbaar was. Veel zoekresultaten gaven aan dat het een veel voorkomend probleem was dat er geen soapruimte meer was op de schijf. Hierop besloot ik in de code op verschillende punten wat geheugen vrij te maken. In eerste instantie leek dit de oplossing, want ik kreeg de melding niet meer en de code liep prima door. Echter, na verder uitbreiding kreeg ik toch weer de killed melding.

Nu ontwikkel ik op een laptop met een 256GB schijf en 16GB RAM, dus het leek me toch onwaarschijnlijk dat ik onvoldoende resources zou hebben. Dit bracht me op het idee om toch eens in de Docker settings te gaan neuzen.

Toen bleek dat Docker inderdaad instellingen heeft voor de te gebruiken resources. Het probleem bleek eenvoudig op te lossen door de swapruimte te verhogen. De standaardwaarde voor de swapruimte is 1GB. Nadat ik deze verhoogd heb naar 3,5GB heeft het probleem zich niet meer voorgedaan.

Ledger Nano firmware update 1.4.2

Ledger Nano update 1.4.2

Zoals zoveel devices heeft ook de Ledger Nano S zo nu en dan een update nodig om hem optimaal te laten werken en veilig te houden. Onlangs kreeg ik bij het inloggen op mijn Bitcoin-account een melding dat er een nieuwe versie van de firmware beschikbaar was: versie 1.4.2. Natuurlijk ging ik dit meteen installeren via de Ledger Manager applicatie.

Om de update uit te voeren moest er eerst ruimte vrijgemaakt worden op het apparaat, dus verwijderde ik alle Wallet-apps op de Ledger Nano. Vervolgens ging ik de update uitvoeren, maar deze leek helemaal mis te gaan! Het apparaat gaf aan:

MCU firmware is outdated

Ik trok de stekker uit het apparaat en sloot hem opnieuw aan zodat hij opnieuw opstartte. Helaas kreeg ik dezelfde foutmelding. Had ik het ding nu gesloopt? Vast niet.. Na wat zoekwerk vond ik de oplossing:

  • Trek de stekker uit de Ledger Nano.
  • Houd de toets die het dichtste bij de stekker zit ingedrukt.
  • Sluit nu de stekker weer aan (houd de knop ingedrukt)

De firmware werd nu geïnstalleerd en via de Ledger Manager kon ik de Wallet-apps weer toevoegen. Houd er rekening mee dat het updaten van de Ledger Nano wel even kan duren. Wacht dus geduldig af wanneer hij aangeeft dat is bezig is en trek niet tussentijd de stekker eruit.