UPDATE mlinvoice_invoice_row SET vat=25.5 WHERE vat=24 AND invoice_id IN (SELECT id FROM mlinvoice_invoice WHERE state_id IN (SELECT id FROM mlinvoice_invoice_state WHERE invoice_open=1));
UPDATE mlinvoice_product SET vat_percent=25.5 WHERE vat_percent=24;
// ohje php:n sisälle kuinka muutat tietoja mikäli tarve...
// jos heittää dokkeriin niin php:tä ei koskaan nää ja osaa tuskin kiinnostaa
// onko php, ruby, javascript vai millä tehty jos homma toimii...
$run_in_docker = false / false // onko tälle muuttujalle lopuksi edes tarvetta?
$db_server = $_ENV["DB_SERVER"] || 'localhost'
$db_user = $_ENV["DB_USER] || 'mlinvoice'
tai sitten jotain
$db_server = array($_ENV["DB_SERVER"], "localhost")
if ($run_in_docker) {
$dbserver = $db_server[0];
}
jne...
tekee hakemiston, johon laittaa Dockerfilen ja lighttpd:mlinvoicen. Oletettuna docker asennettuna.
Dockerfile hakee automaattisesti labs.fi:n tietopalveluista vakaan jakelun. Ellei Ere muuta sijaintia :)
kontinkääntö:
$ docker build -t mli:1 .
verkon luonti
$ docker network create mli
Tässä ei ole tietokantaa mukana vaan se pyörii omana palveluna
docker pull mariadb:latest (veikkaus, run käynnistää pullauksen, jos ei löydy koneelta)
$ docker run -d --name db --network=mli mariadb:latest
mariadb:n ja mlinvoicen on oltava samassa verkossa. DB voi olla useammassakin verkossa.
DB:n porttia ei tarvi bindata hostille vaan sen voi pitää dockerin sisällä (turvallisempi).
Ainoastaan mlinvoicen portti otetaan ulos, tässä tapauksessa 8089 omalla koneella kun dockerin
sisällä se on 80.
Käynnistys esim. (tosin ympäristömuuttujilla ei tee vielä mitään :)
docker run -d -e DB_HOST=db -e DB_USERNAME=mlinvoice -e DB_PASSWORD=mlinvoice -e DB_NAME=mlinvoice -e SECRET_KEY_32=elitism-establish-sevenfold --name mli --network=mli -p 8089:80 mli:1