Docker ejecutando Nginx, PHP-FPM, Composer, MySQL y PHPMyAdmin.
Instalar requisitos previos
Antes de instalar el proyecto, asegúrese de que se hayan cumplido los siguientes requisitos previos.
Clonar el proyecto
Descargaremos el código de su repositorio en GitHub.
Ejecute la aplicación
En este punto tendremos todas las piezas del proyecto en su lugar.
Usar comandos de Docker
Cuando se ejecuta, puede usar los comandos de Docker para realizar operaciones recurrentes.
Solicitud de prueba
Para ejecutar los comandos de la ventana acoplable sin usar sudo, debe agregar el grupo de la ventana acoplable a su usuario :
sudo usermod -aG docker your-user
Por ahora, este proyecto ha sido creado principalmente para Unix (Linux/MacOS)
. Quizás podría funcionar en Windows.
Todos los requisitos deben estar disponibles para su distribución. Los más importantes son:
Compruebe si docker-compose
ya está instalado ingresando el siguiente comando:
which docker-compose
Verifique la compatibilidad de Docker Compose:
En Ubuntu y Debian, estos están disponibles en el metapaquete build-essential. En otras distribuciones, es posible que necesites instalar el compilador GNU C++ por separado.
sudo apt install build-essential
Debes tener cuidado al instalar servidores web de terceros como MySQL o Nginx.
Este proyecto utiliza los siguientes puertos:
Servidor | Puerto |
---|---|
mysql | 8989 |
PHPMyAdmin | 8080 |
nginx | 8000 |
Para instalar Git, descárgalo e instálalo siguiendo las instrucciones:
git clone https://github.com/sahedbs23/oscar-car-rental.git
Vaya al directorio del proyecto:
cd oscar-car-rental
.
├── Makefile
├── README.md
├── data
│ └── db
│ ├── dumps
│ └── mysql
├── doc
├── docker-compose.yml
├── etc
│ ├── nginx
│ │ ├── default.conf
│ │ └── default.template.conf
│ ├── php
│ │ └── php.ini
│ └── ssl
└── web
├── app
│ ├── composer.json.dist
│ ├── phpunit.xml.dist
│ ├── src
│ │ └── App.php
│ └── test
│ └── bootstrap.php
└── public
└── index.php
Inicie la aplicación:
docker-compose up -d
Espere, esto puede tardar varios minutos...
docker-compose logs -f # Follow log output
Abre tu navegador favorito:
Detener y borrar servicios
docker-compose down -v
docker run --rm -v $( pwd ) /web/app:/app composer require symfony/yaml
docker run --rm -v $( pwd ) /web/app:/app composer update
docker-compose exec -T php ./app/vendor/bin/phpunit --colors=always --configuration ./app
docker-compose exec -T php ./app/vendor/bin/phpmd ./app/src text cleancode,codesize,controversial,design,naming,unusedcode
docker-compose exec php php -m
docker exec -it mysql bash
y
mysql -u " $MYSQL_ROOT_USER " -p " $MYSQL_ROOT_PASSWORD "
mkdir -p data/db/dumps
source .env && docker exec $( docker-compose ps -q mysqldb ) mysqldump --all-databases -u " $MYSQL_ROOT_USER " -p " $MYSQL_ROOT_PASSWORD " > " data/db/dumps/db.sql "
source .env && docker exec -i $( docker-compose ps -q mysqldb ) mysql -u " $MYSQL_ROOT_USER " -p " $MYSQL_ROOT_PASSWORD " < " data/db/dumps/db.sql "
Notice:
reemplace "YOUR_DB_NAME" por su nombre personalizado.
source .env && docker exec $( docker-compose ps -q mysqldb ) mysqldump -u " $MYSQL_ROOT_USER " -p " $MYSQL_ROOT_PASSWORD " --databases YOUR_DB_NAME > " data/db/dumps/YOUR_DB_NAME_dump.sql "
source .env && docker exec -i $( docker-compose ps -q mysqldb ) mysql -u " $MYSQL_ROOT_USER " -p " $MYSQL_ROOT_PASSWORD " < " data/db/dumps/YOUR_DB_NAME_dump.sql "
Notice:
importe la colección de cartero desde api-doc/postman_collection.json
Notice:
importe el entorno de cartero desde api-doc/postman_environment.json
Notice:
una licencia de automóvil es única a nivel de base de datos. Puede importar el contenido del archivo solo una vez.