Abbiamo pubblicato questi comandi per i nostri sviluppatori a scopo di riferimento. Sono visibili pubblicamente perché potrebbero essere utili anche ad altri sviluppatori:
Contents
Docker
#fermare tutti i container:
docker stop $(docker ps -a -q)
Riavviare il servizio Docker
sudo systemctl restart docker.service
Ricreare tutti i container
docker-compose up --build --force-recreate --no-deps
#fermare tutti i container con la forza
docker kill $(docker ps -q)
#rimuovere tutti i container
docker rm $(docker ps -a -q)
#rimuovere tutte le immagini Docker
docker rmi $(docker images -q)
#ripulire il resto
docker system prune --all --force --volumes
#Trovare l’IP di un container
docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' [container_name]
#Mostrare i log di Docker
docker-compose logs
#Mostrare i processi di Docker
docker-compose ps
Eseguire mysqldump in un container
docker exec [container_name] sh -c 'exec mysqldump --all-databases -uroot -p[password]' > /home/user/all-databases.sql
Messaggio di errore: Could not kill running container runc did not terminate successfully: container_linux.go:392: init process caused “permission denied”
Questo può succedere se apparmor impedisce di fermare il container Docker.
Una soluzione è disinstallare apparmor e riavviare il servizio Docker:
sudo apt-get purge --auto-remove apparmor sudo service docker restart docker system prune --all --volumes
sudo systemctl restart docker
sudo systemctl daemon-reload
Errore nell’avvio del proxy userland: listen tcp 172.200.0.1:443: bind: address already in use
Trova il PID e termina il processo:
sudo netstat -nlpt |grep 3306
sudo kill [pid]
Rete
Numero di connessioni aperte per IP netstat -ntu | awk ‘{print $5}’ | cut -d: -f1 | sort | uniq -c | sort -n Mostrare tutti gli indirizzi IP connessi a una determinata porta netstat -an |grep 443 netstat -an |grep 80 Contare le connessioni per IP netstat -an | grep 80 | wc -l netstat -an | grep 443 | wc -l
Firewall iptables
Firewall: bloccare un indirizzo IPsudo iptables -A INPUT -s [IP ADDRESS] -j DROP Consentire l’accesso da un indirizzo IP specificosudo iptables -A INPUT -s 91.52.78.249 -p tcp –destination-port 3306 -j ACCEPT Sbloccare gli indirizzi IP bloccati da fail2ban iptables -D [chain] [line] z.B. iptables -D f2b-wordpress-hard 1 Regole del firewall Vedi: https://www.digitalocean.com/community/tutorials/how-to-set-up-a-firewall-with-ufw-on-ubuntu-18-04
- sudo ufw default deny incoming
- sudo ufw default allow outgoing
- sudo ufw allow ssh
- sudo ufw allow 1000
- sudo ufw allow http
- sudo ufw allow 443
- sudo ufw allow from 91.52.78.249 to any port 3306 (Indirizzo IP locale)
- sudo ufw allow from 52.45.200.92 to any port 3306 (Amazon DBS)
- sudo ufw deny from 157.245.247.135
MySQL
Cambiare il modulo di autenticazione delle password di MySQL in mysql_native_password. Necessario per l’aggiornamento da 7.X a MySQL 8.x ALTER USER ‘user’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘password1’;
Debug xDebug:-)
Se il tuo editor di codice non si connette a xDebug, crea un file test.php nella cartella della tua app con un po’ di codice e aggiungi un breakpoint. Quindi esegui il comando qui sotto per testarlo:
PHP_IDE_CONFIG="serverName=tests" php -dxdebug.remote_autostart=1 -dxdebug.remote_enable=1 -dxdebug.default_enable=1 -dxdebug.remote_connect_back=1 -dxdebug.remote_port=9001 -dxdebug.idekey=PHPSTORM -dxdebug.remote_host=172.200.0.1 test.php
Il login ricarica la schermata di login
Se provi ad accedere a KDE e il modulo di login si ricarica dopo aver inserito credenziali corrette, prova i comandi qui sotto:
systemctl stop gdm.service
systemctl restart gdm.service
sudo dpkg-reconfigure gdm3
reboot