2022-03-27 16:02:38 +00:00
|
|
|
## Docker-compose LEMP med NodeJS
|
|
|
|
### Inkluderar
|
|
|
|
- nginx -> localhost:80
|
|
|
|
- node -> localhost: 5000
|
|
|
|
- php
|
|
|
|
- mariadb -> mariadb
|
|
|
|
- phpmyadmin -> localhost:8080
|
|
|
|
- composer
|
|
|
|
|
|
|
|
### HowTo
|
|
|
|
|
|
|
|
##### node
|
|
|
|
www/nodejs
|
2022-03-27 16:42:08 +00:00
|
|
|
Kör i terinalen:
|
2022-03-27 16:02:38 +00:00
|
|
|
$ npm install
|
2022-03-27 16:42:08 +00:00
|
|
|
|
|
|
|
För sutmoatisk omstart av server vid utveckling (när fil sparas):
|
|
|
|
$ npm install nodemon // ej -g
|
|
|
|
|
2022-03-27 16:02:38 +00:00
|
|
|
Ändra i docker-compose.yml
|
|
|
|
command: npm run start -> command: npm run dev
|
|
|
|
|
|
|
|
Routar om i nginx från /api till http://node:5000
|
|
|
|
|
|
|
|
##### Webbroten
|
|
|
|
www/public
|
|
|
|
##### Starta servern (containern) med
|
|
|
|
docker-compose up -d
|
|
|
|
##### Stoppa servern (containern) med
|
|
|
|
docker-compose down
|
|
|
|
##### Serverns url
|
|
|
|
localhost
|
|
|
|
### MariaDB
|
|
|
|
root password: 12345
|
|
|
|
Byt lösen innan första start i docker-compose.yml (MYSQL_ROOT_PASSWORD=12345)
|
|
|
|
##### phpmyadmin
|
|
|
|
localhost:8080
|
|
|
|
##### Anslut till MariaDB med php
|
|
|
|
|
|
|
|
```php
|
|
|
|
<?php
|
|
|
|
// Definierar konstanter med användarinformation.
|
|
|
|
define ('DB_USER', 'userName'); // Användare i MariaDB
|
|
|
|
define ('DB_PASSWORD', '12345');
|
|
|
|
define ('DB_HOST', 'mariadb'); // Viktigt! Inte localhost!
|
|
|
|
define ('DB_NAME', 'dbName'); // Databasen som anslutning skall ske till
|
|
|
|
|
|
|
|
// Skapar en anslutning till MariaDB och databasen dbName
|
|
|
|
$dsn = 'mysql:host=' . DB_HOST . ';dbname=' . DB_NAME . ';charset=utf8';
|
|
|
|
$db = new PDO($dsn, DB_USER, DB_PASSWORD);
|
|
|
|
```
|
|
|
|
### ToDo
|
|
|
|
Stöd för https, TLS (ssl).
|