Aqbeż għall-kontenut

Installazzjoni tal-komponent HTML5 Gateway Docker

Importazzjoni tal-immaġni Docker

Qabel ma tkun tista’ toħloq kontenitur HTML5 Gateway Docker, trid timporta l-immaġni Docker. Biex tagħmel dan, iftaħ shell li minnha jkollok disponibbli l-kmandi Docker, kif ukoll il-fajl cleanroom-html5-4.6.1-33-v2.tgz. Mix-shell, ħaddem il-kmand li ġej, u aġġusta l-mogħdija lejn il-fajl TGZ jekk ma jkunx fid-direttorju attwali:

1
docker load --input cleanroom-html5-4.6.1-33-v2.tgz

Imbagħad iċċekkja li l-importazzjoni rnexxiet bil-kmand li ġej:

1
docker inspect --type=image cleanroom-html5:4.6.1-33-v2

Ir-riżultat mistenni huwa dan li ġej. Jekk ma jkunx hekk, l-importazzjoni falliet:

1
2
3
4
5
6
[
    {
        "Id": "sha256:16ae07f1604409f6b092a8a2944e69b3db458a04dbbab6ffc3f945c253c82cee",
        "RepoTags": [
            "cleanroom-html5:4.6.1-33-v2"
        ],
Output sħiħ
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
[
    {
        "Id": "sha256:16ae07f1604409f6b092a8a2944e69b3db458a04dbbab6ffc3f945c253c82cee",
        "RepoTags": [
            "cleanroom-html5:4.6.1-33-v2"
        ],
        "RepoDigests": [],
        "Parent": "",
        "Comment": "buildkit.dockerfile.v0",
        "Created": "2025-08-27T11:35:33.014244258+02:00",
        "DockerVersion": "",
        "Author": "",
        "Architecture": "amd64",
        "Os": "linux",
        "Size": 781097647,
        "GraphDriver": {
            "Data": {
                "LowerDir": "/var/lib/docker/overlay2/aa079416d669709486e3fd3dfefcff51acb3905ffcca7e6e428630d1a499e669/diff:/var/lib/docker/overlay2/da9f43ee88f5961a157af404be018fc7c3f5185a798b26911e38118d83830de7/diff:/var/lib/docker/overlay2/28efb3982392e95711e849cb90985fd534cd6273f4dec758463f98b41a432e93/diff:/var/lib/docker/overlay2/44a3abed0a932259b79c9e5e273749cc06bd8aca7d3adbfd1753a7b053dcae2f/diff:/var/lib/docker/overlay2/e3dfd4c7c4fe568ef731bd91314e69cc5c807ce717d5f4ea94f0d02cc11e70c5/diff:/var/lib/docker/overlay2/5acf2b56871d2537d95b9981c0498e16723a9eca20827f550366b48d8acf508f/diff:/var/lib/docker/overlay2/c732cd17c6501229b3a12c488d7f4c26f8634329211cac54ff1cf0d53055421f/diff:/var/lib/docker/overlay2/fd61cbda2a5e9a578c5a8eea67b63df3d31642588be3b6f2f7ebe6e10964f745/diff",
                "MergedDir": "/var/lib/docker/overlay2/b9c8170b6a9ed8e7c84a9ba208cd6e4b25e88d1dad42cd72b0e1178da62a46d4/merged",
                "UpperDir": "/var/lib/docker/overlay2/b9c8170b6a9ed8e7c84a9ba208cd6e4b25e88d1dad42cd72b0e1178da62a46d4/diff",
                "WorkDir": "/var/lib/docker/overlay2/b9c8170b6a9ed8e7c84a9ba208cd6e4b25e88d1dad42cd72b0e1178da62a46d4/work"
            },
            "Name": "overlay2"
        },
        "RootFS": {
            "Type": "layers",
            "Layers": [
                "sha256:4668f0f488e5ad4494fadff56ad585c514794b3a293e5e8d006410de9da08155",
                "sha256:782f6c5256575fbef0e518a1a1ce9188c457f1a0e9b88b733ed672f6e1be482d",
                "sha256:e09fd3e10e878ef6c812ccde0fa55b66cf4b9b593cf182c2760fec73649968c2",
                "sha256:e51c952c7bd89e0a3188c683d689eed81444d5513c14251f4b21cb9fd056d27d",
                "sha256:233ff67db52988898e3c1b4c2573b86c1c0c50d23f1f4b2365e3fc51abedbf9f",
                "sha256:f832eee42398852cab80a9a45138bf076d63ebbe153263fd8cf66857a0833d02",
                "sha256:f59f79d19c38ae4863b81774ad1d98030370c64e17013eb786da7b727bf2b41b",
                "sha256:0caeed550a29dbb274781e78bbe910fa5ccfdc90119cb4f9e3c815feff5a70b9",
                "sha256:21313651aa44ac0f5dd459a94be172b003b68f81b0db945c24a7ada5c21799e3"
            ]
        },
        "Metadata": {
            "LastTagTime": "0001-01-01T00:00:00Z"
        },
        "Config": {
            "Cmd": null,
            "Entrypoint": [
                "/entrypoint.sh"
            ],
            "Env": [
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "DEBIAN_FRONTEND=noninteractive",
                "IMAGE_BUILD_DATE=20250827T112940",
                "IMAGE_BUILD_VERSION=4.6.1-33-v2",
                "IMAGE_IPDIPC=IPC-53702"
            ],
            "ExposedPorts": {
                "8080/tcp": {},
                "8090/tcp": {}
            },
            "Labels": {
                "maintainer": "contact@systancia.com",
                "org.label-schema.build-date": "20250827T112940",
                "org.label-schema.description": "Systancia Cleanroom Gateway",
                "org.label-schema.name": "Systancia Cleanroom 4.6.1-33-v2 HTML5 Server",
                "org.label-schema.url": "http://systancia.com/",
                "org.label-schema.vendor": "Systancia",
                "version": "4.6.1-33-v2"
            },
            "OnBuild": null,
            "User": "root",
            "Volumes": null,
            "WorkingDir": ""
        }
    }
]

Konfigurazzjoni tal-kontenitur

Varjabbli tal-ambjent

Varjabbli għall-iskjerament permezz ta’ pairing

Isem Obbligatorju Valur default Kumment
ENV_MEDIATION IVA Użat għall-konnessjoni permezz ta’ pairing.
Jindika l-isem DNS jew l-indirizz IP għall-konnessjoni mal-interfaċċa web ta’ pjattaforma CyberElements Bastion.
ENV_TOKEN IVA Użat għall-konnessjoni permezz ta’ pairing.
Indikazzjoni tat-token tal-pairing li għandu jintuża għall-konnessjoni mas-servizz Mediation Controller.
ENV_NO_CHECK_CERT LE false Użat għall-konnessjonijiet permezz ta’ pairing.
Jekk il-verifika taċ-ċertifikat web tas-servizz Mediation Controller għandhiex tiġi diżattivata jew le; utli ma’ CyberElements Bastion meta l-aċċess isir permezz ta’ indirizz IP jew meta ċ-ċertifikat web mhuwiex ċertifikat rikonoxxut mill-awtoritajiet taċ-ċertifikazzjoni pubbliċi default.
Valuri aċċettati: true jew false.

Varjabbli għall-iskjerament manwali

Isem Obbligatorju Valur default Kumment
ENV_GW_CERT_NAME IVA Użat għall-konnessjoni b’konfigurazzjoni manwali.
Isem il-fajl taċ-ċertifikat għall-konnessjoni mal-komponent SSL Router.
ENV_GW_CERT_PASSWORD IVA Użat għall-konnessjoni b’konfigurazzjoni manwali.
Il-password tal-fajl taċ-ċertifikat għall-konnessjoni mal-komponent SSL Router.
ENV_SSL_ROUTER_IP IVA Użat għall-konnessjoni b’konfigurazzjoni manwali.
L-indirizz IP jew l-isem DNS tal-komponent SSL Router li miegħu se jikkonnettja l-komponent HTML5 Gateway.
ENV_SSL_ROUTER_PORT LE 443 Użat għall-konnessjoni b’konfigurazzjoni manwali.
Il-port tal-komponent SSL Router li miegħu se jikkonnettja l-komponent HTML5 Gateway.

Varjabbli diversi

Isem Obbligatorju Valur default Kumment
ENV_DISABLE_RSYSLOG LE false Diżattivazzjoni tas-servizz rsyslog.
Valuri aċċettati: true jew false.

Volumi

Volum Kumment
/etc/ipdiva/ Volum tal-konfigurazzjoni tal-komponent HTML5 Gateway.
Nirrakkomandaw li jiġi mmuntat fuq volum bl-isem jew fuq is-sistema tal-fajls tal-kompjuter ospitanti.
/opt/certificates/ Volum li fih iċ-ċertifikat(i) tal-komponent HTML5 Gateway meta l-konfigurazzjoni ssir mingħajr pairing.
/var/log/ Volum li fih ir-reġistri tal-komponent HTML5 Gateway.

Portijiet

Port Kumment
8080 Port tas-smigħ tas-servizz HTML5.

Skjerament tal-komponent HTML5 Gateway Docker

Skjerament bil-pairing

Prerekwiżiti

Qabel ma tiskjera l-komponent HTML5 Gateway Docker, trid tikseb token tal-pairing.

L-iskjerament deskritt hawn taħt se juża l-volumi disponibbli kollha (ħlief /opt/certificates/, li mhuwiex utli f’dan il-kuntest) u se jesponi l-portijiet kollha.
Il-volumi se jiġu mmuntati fuq is-sistema tal-fajls tal-kompjuter ospitanti fil-post HTML5_GATEWAY_REP. F’dan il-post hemm is-sottodirettorji li ġejjin:

  • config
  • log

Tista’ tippersonalizza l-varjabbli għall-kmandi li ġejjin:

Valur personalizzat Varjabbli Kumment
DOCKER_NAME Isem il-kontenitur Docker.
HTML5_GATEWAY_REP Post fis-sistema tal-fajls fejn għandhom jiġu mmuntati l-volumi.
ENV_MEDIATION_VALUE Il-valur tal-varjabbli tal-ambjent ENV_MEDIATION.
ENV_TOKEN_VALUE Il-valur tal-varjabbli tal-ambjent ENV_TOKEN.
ENV_NO_CHECK_CERT_VALUE Il-valur tal-varjabbli tal-ambjent ENV_NO_CHECK_CERT.

Oħloq is-siġra tal-folders meħtieġa għall-immuntar tal-volumi fuq is-sistema tal-fajls:

1
2
mkdir -p HTML5_GATEWAY_REP/config
mkdir HTML5_GATEWAY_REP/log
1
New-Item -ItemType Directory -Force -Path "HTML5_GATEWAY_REP\config", "HTML5_GATEWAY_REP\log"

U fl-aħħar, ibda kontenitur ġdid:

1
2
3
4
5
6
7
8
docker run -d --restart unless-stopped --name "DOCKER_NAME" \
-e ENV_MEDIATION="ENV_MEDIATION_VALUE" \
-e ENV_TOKEN="ENV_TOKEN_VALUE" \
-e ENV_NO_CHECK_CERT="ENV_NO_CHECK_CERT_VALUE" \
-v "HTML5_GATEWAY_REP/config/:/etc/ipdiva/:rw" \
-v "HTML5_GATEWAY_REP/log/:/var/log/:rw" \
-p 8080:8080 \
cleanroom-html5:4.6.1-33-v2
1
2
3
4
5
6
7
8
docker run -d --restart unless-stopped --name "DOCKER_NAME" `
-e "ENV_MEDIATION=ENV_MEDIATION_VALUE" `
-e "ENV_TOKEN=ENV_TOKEN_VALUE" `
-e "ENV_NO_CHECK_CERT=ENV_NO_CHECK_CERT_VALUE" `
-v "HTML5_GATEWAY_REP\config:/etc/ipdiva/:rw" `
-v "HTML5_GATEWAY_REP\log:/var/log/:rw" `
-p 8080:8080 `
cleanroom-html5:4.6.1-33-v2

Ir-reġistri tal-kontenitur jistgħu jiġu kkonsultati bil-kmand li ġej:

1
docker logs -f DOCKER_NAME

Skjerament manwali

Prerekwiżiti

Qabel ma tiskjera l-komponent HTML5 Gateway Docker, irid ikollok iċ-ċertifikat meħtieġ għall-komponent HTML5 Gateway.

Passwords viżibbli b’docker inspect

Il-varjabbli tal-ambjent ta’ kontenitur, inklużi l-passwords taċ-ċertifikati, jibqgħu jinqraw minn kull min huwa awtorizzat iħaddem docker inspect fuq is-server Docker. Għalhekk għandu jiġi ppreferut l-iskjerament bil-pairing, li ma juża l-ebda password ta’ ċertifikat.

L-iskjerament deskritt hawn taħt se juża l-volumi kollha disponibbli u jesponi l-portijiet kollha.
Il-volumi se jiġu mmuntati fis-sistema tal-fajls tal-kompjuter ospitanti fil-post MANUAL_REP. F’dan il-post hemm is-sottodirettorji li ġejjin:

  • config
  • log
  • certificates

Tista’ tippersonalizza l-varjabbli għall-kmandi li ġejjin:

Valur personalizzat Varjabbli Kumment
MANUAL_NAME Isem il-kontenitur Docker.
MANUAL_REP Post fis-sistema tal-fajls fejn jiġu mmuntati l-volumi.
ENV_GW_CERT_NAME_VALUE Valur tal-varjabbli tal-ambjent ENV_GW_CERT_NAME.
ENV_SSL_ROUTER_IP_VALUE Valur tal-varjabbli tal-ambjent ENV_SSL_ROUTER_IP.
ENV_SSL_ROUTER_PORT_VALUE Valur tal-varjabbli tal-ambjent ENV_SSL_ROUTER_PORT.

Oħloq is-siġra tal-folders meħtieġa għall-immuntar tal-volumi fuq is-sistema tal-fajls:

1
2
3
mkdir -p MANUAL_REP/config
mkdir MANUAL_REP/log
mkdir MANUAL_REP/certificates
1
New-Item -ItemType Directory -Force -Path "MANUAL_REP\config", "MANUAL_REP\log", "MANUAL_REP\certificates"

Imbagħad poġġi ċ-ċertifikati għall-komponent HTML5 Gateway u għas-servizz tar-reġistrazzjoni fil-post MANUAL_REP/certificates.

Biex il-passwords taċ-ċertifikati ma jinżammux fl-istorja tax-shell, daħħalhom f’varjabbli tal-ambjent tas-sessjoni attwali (dak li tikteb ma jintweriex):

1
2
read -rsp "HTML5 Gateway certificate password: " ENV_GW_CERT_PASSWORD; echo
export ENV_GW_CERT_PASSWORD
1
$env:ENV_GW_CERT_PASSWORD = [Net.NetworkCredential]::new('', (Read-Host -AsSecureString "HTML5 Gateway certificate password")).Password

Fl-aħħar, ibda kontenitur ġdid:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
docker run -d --restart unless-stopped --name "MANUAL_NAME" \
-e ENV_GW_CERT_NAME="ENV_GW_CERT_NAME_VALUE" \
-e ENV_GW_CERT_PASSWORD \
-e ENV_SSL_ROUTER_IP="ENV_SSL_ROUTER_IP_VALUE" \
-e ENV_SSL_ROUTER_PORT="ENV_SSL_ROUTER_PORT_VALUE" \
-v "MANUAL_REP/config/:/etc/ipdiva/:rw" \
-v "MANUAL_REP/log/:/var/log/:rw" \
-v "MANUAL_REP/certificates/:/opt/certificates/:ro" \
-p 8080:8080 \
cleanroom-html5:4.6.1-33-v2
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
docker run -d --restart unless-stopped --name "MANUAL_NAME" `
-e "ENV_GW_CERT_NAME=ENV_GW_CERT_NAME_VALUE" `
-e ENV_GW_CERT_PASSWORD `
-e "ENV_SSL_ROUTER_IP=ENV_SSL_ROUTER_IP_VALUE" `
-e "ENV_SSL_ROUTER_PORT=ENV_SSL_ROUTER_PORT_VALUE" `
-v "MANUAL_REP\config:/etc/ipdiva/:rw" `
-v "MANUAL_REP\log:/var/log/:rw" `
-v "MANUAL_REP\certificates:/opt/certificates/:ro" `
-p 8080:8080 `
cleanroom-html5:4.6.1-33-v2

Ladarba l-kontenitur ikun beda, neħħi dawn il-varjabbli mis-sessjoni:

1
unset ENV_GW_CERT_PASSWORD
1
Remove-Item Env:ENV_GW_CERT_PASSWORD

Ir-reġistri tal-kontenitur jistgħu jiġu kkonsultati bil-kmand li ġej:

1
docker logs -f MANUAL_NAME

Konfigurazzjoni tas-servizz Mediation Controller

Biex il-komponent HTML5 Gateway Docker il-ġdid ikun operattiv, is-server Mediation Controller għad irid jiġi kkonfigurat permezz ta’ aċċess SSH jew mill-konsol, bil-permessi ta’ root.

Din l-aħħar konfigurazzjoni hija meħtieġa biex is-servizz Mediation Controller ikun jista’ jikkomunika mas-servizz HTML5.
Madankollu, din il-konfigurazzjoni tvarja skont il-post fejn jinsab il-komponent HTML5 Gateway Docker:

Id-dijagramma ġenerali hija din li ġejja:

flowchart LR
    subgraph DMZ
        direction TB
        HTML5(HTML5 Gateway Docker)
        MED(Mediation Controller)
    end

    subgraph LAN
        GW(Edge Gateway)
    end


    MED -.-> |Konnessjoni mas-servizz HTML5 ; TCP 8080| HTML5
    HTML5 --> |TLS Tunnel| MED
    MED ~~~ GW
    GW --> |TLS Tunnel| MED
    GW ~~~ MED

    linkStyle 0 stroke:#d22,color;
Hold "Ctrl" to enable pan & zoom

F’dan il-kuntest, ikun meħtieġ li żżid l-informazzjoni mogħtija hawn taħt mal-fajl /etc/ipdiva/httpd/commonParameters.extra.conf jew li toħolqu.
Il-personalizzazzjoni tas-settings hija disponibbli:

Valur personalizzat Varjabbli Kumment
HTML5_URL_DMZ URL ikkonfigurat meta jiġi ddikjarat il-komponent HTML5 Gateway fil-konsol tal-amministrazzjoni.
HTML5_IP_DMZ Isem DNS jew indirizz IP tas-server Docker li fuqu huwa attiv il-komponent HTML5 Gateway Docker.
HTML5_PORT_DMZ Port ippubblikat mis-server Docker għall-komponent HTML5 Gateway Docker.
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
<Location /HTML5_URL_DMZ/>
    Order allow,deny
    Allow from all
    ProxyPass http://HTML5_IP_DMZ:HTML5_PORT_DMZ/systanciaHTML5-6.0/ flushpackets=on
    ProxyPassReverse http://HTML5_IP_DMZ:HTML5_PORT_DMZ
</Location>

<Location /HTML5_URL_DMZ/websocket-tunnel>
    Order allow,deny
    Allow from all
    ProxyPass ws://HTML5_IP_DMZ:HTML5_PORT_DMZ/systanciaHTML5-6.0/websocket-tunnel
    ProxyPassReverse ws://HTML5_IP_DMZ:HTML5_PORT_DMZ/systanciaHTML5-6.0/websocket-tunnel
</Location>

Id-dijagramma ġenerali hija din li ġejja:

flowchart LR
    subgraph DMZ
        direction TB
        MED(Mediation Controller)
    end

    subgraph LAN
        HTML5(HTML5 Gateway Docker)
        GW(Edge Gateway)
    end


    MED -.- | Konnessjoni mas-servizz HTML5 ; permezz ta’ mina TLS| GW -.-> |Konnessjoni mas-servizz HTML5 ; TCP 8080| HTML5
    HTML5 --> |TLS Tunnel| MED
    GW --> |TLS Tunnel| MED

    linkStyle 0,1 stroke:#d22,color;
Hold "Ctrl" to enable pan & zoom

F’dan il-kuntest, ikun meħtieġ li żżid l-informazzjoni mogħtija hawn taħt mal-fajl /etc/ipdiva/httpd/commonParameters.extra.conf jew li toħolqu.
Il-personalizzazzjoni tas-settings hija disponibbli:

Valur personalizzat Varjabbli Kumment
HTML5_URL_LAN URL ikkonfigurat meta jiġi ddikjarat il-komponent HTML5 Gateway fil-konsol tal-amministrazzjoni.
GW_NAME_LAN Isem il-komponent Edge Gateway użat biex jikkonnettja mas-servizz HTML5. Il-karattru pipe (linja vertikali) fl-aħħar tal-linja għandu jinżamm.
ORGANIZATION_NAME_LAN Isem l-organizzazzjoni li magħha jikkonnettja l-komponent Edge Gateway.
HTML5_IP_LAN Isem DNS jew indirizz IP tas-server Docker li fuqu huwa attiv il-komponent HTML5 Gateway Docker.
HTML5_PORT_LAN Port ippubblikat mis-server Docker għall-komponent HTML5 Gateway Docker.
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
<Location /HTML5_URL_LAN/>
    Order allow,deny
    Allow from all
    RequestHeader set X-Forwarded-Proto "https"
    RequestHeader set X-IPdiva-Gateway GW_NAME_LAN|
    RequestHeader set X-IPdiva-Orgname ORGANIZATION_NAME_LAN
    RequestHeader set X-IPdiva-Service HTML5_IP_LAN:HTML5_PORT_LAN

    ProxyPass http://127.0.0.1:9016/systanciaHTML5-6.0/ flushpackets=on
</Location>

<Location /HTML5_URL_LAN/websocket-tunnel>
    Order allow,deny
    Allow from all
    RequestHeader set X-Forwarded-Proto "https"
    RequestHeader set X-IPdiva-Gateway GW_NAME_LAN|
    RequestHeader set X-IPdiva-Orgname ORGANIZATION_NAME_LAN
    RequestHeader set X-IPdiva-Service HTML5_IP_LAN:HTML5_PORT_LAN

    ProxyPass ws://127.0.0.1:9016/systanciaHTML5-6.0/websocket-tunnel
</Location>

Parir

Din il-konfigurazzjoni tista’ tintuża wkoll fis-sitwazzjoni li ġejja, fejn komponent Edge Gateway Docker u komponent HTML5 Gateway Docker qed jaħdmu fl-istess netwerk Docker:

flowchart LR
    subgraph DMZ
        direction TB
        MED(Mediation Controller)
    end

    subgraph LAN
        subgraph docker[Docker Server]
            HTML5([HTML5 Gateway Docker])
            GW([Edge Gateway])
        end
    end


    MED -.- | Konnessjoni mas-servizz HTML5 ; permezz ta’ mina TLS| GW -.-> |Konnessjoni mas-servizz HTML5 ; TCP 8080 permezz tan-netwerk Docker| HTML5
    HTML5 --> |TLS Tunnel| MED
    GW --> |TLS Tunnel| MED

    linkStyle 0,1 stroke:#d22,color;
Hold "Ctrl" to enable pan & zoom
Eżempju

F’dan l-eżempju, se niskjeraw komponent Edge Gateway u komponent HTML5 Gateway fuq l-istess server Docker.

L-infrastruttura użata għall-eżempju hija din li ġejja:

  • Server Mediation Controller
    • Indirizz IP web: 10.0.10.10
    • Isem l-organizzazzjoni: my-organization-name
    • Token għall-komponent Edge Gateway: YJ5N-JN05-N5LS-N26H-7JHA-HZ9R-BGJF-MAVH
    • Token għall-komponent HTML5 Gateway: ATCW-OMVR-0RY4-LW1M-D9G9-H5VF-WPX5-YCXF
    • URL għall-aċċess għas-servizz HTML5: HTML5_DOCKER
  • Server Docker
    • Isem tan-netwerk Docker: cyberelements-cleanroom-network
    • Edge Gateway
      • Name: my-edge-gateway-docker
      • Post għerq fis-sistema tal-fajls: /opt/my-edge-gateway-docker
    • HTML5 Gateway
      • Name: my-html5-gateway-docker
      • Post għerq fis-sistema tal-fajls: /opt/my-html5-gateway-docker

L-ewwel nett, fuq is-server Docker, trid toħloq l-istruttura tad-direttorji għall-immuntar tal-volumi Docker:

1
2
3
4
5
6
mkdir -p /opt/my-edge-gateway-docker/config
mkdir /opt/my-edge-gateway-docker/graphical_archives
mkdir /opt/my-edge-gateway-docker/ssh_archives
mkdir /opt/my-edge-gateway-docker/log
mkdir -p /opt/my-html5-gateway-docker/config
mkdir /opt/my-html5-gateway-docker/log

Imbagħad oħloq netwerk Docker tat-tip bridge biex iż-żewġ kontenituri jkunu jistgħu jikkomunikaw ma’ xulxin:

1
docker network create -d bridge cyberelements-cleanroom-network

Wara dan, ibda l-kontenitur Edge Gateway. Innota li l-eżempju jistabbilixxi konnessjoni permezz ta’ pairing, b’aċċess għas-servizz Mediation Controller permezz tal-indirizz IP tiegħu u mingħajr verifika taċ-ċertifikat. Barra minn hekk, jiżdied il-parametru --network biex jiġi speċifikat l-użu tan-netwerk Docker maħluq qabel:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
docker run -d --restart unless-stopped --name "my-edge-gateway-docker" \
-e ENV_MEDIATION="10.0.10.10" \
-e ENV_TOKEN="YJ5N-JN05-N5LS-N26H-7JHA-HZ9R-BGJF-MAVH" \
-e ENV_NO_CHECK_CERT="true" \
-v "/opt/my-edge-gateway-docker/config/:/etc/ipdiva/:rw" \
-v "/opt/my-edge-gateway-docker/graphical_archives/:/var/lib/ipdiva/carerecord/archives/:rw" \
-v "/opt/my-edge-gateway-docker/ssh_archives/:/var/ipdiva/care/sshrecord/:rw" \
-v "/opt/my-edge-gateway-docker/log/:/var/log/:rw" \
-p 2222:2222 \
-p 3389:3389 \
-p 8443:8443 \
--network="cyberelements-cleanroom-network" \
cleanroom-gateway:4.6.1-33-v2

Wara dan, ibda l-kontenitur HTML5 Gateway. Innota li l-eżempju jistabbilixxi konnessjoni permezz ta’ pairing, b’aċċess għas-servizz Mediation Controller permezz tal-indirizz IP tiegħu u mingħajr verifika taċ-ċertifikat. Barra minn hekk, jiżdied il-parametru --network biex jiġi speċifikat l-użu tan-netwerk Docker maħluq qabel, u peress li l-aċċess għas-servizz HTML5 se jgħaddi min-netwerk Docker, mhuwiex meħtieġ li jiġi ppubblikat il-port 8080:

1
2
3
4
5
6
7
8
docker run -d --restart unless-stopped --name "my-html5-gateway-docker" \
-e ENV_MEDIATION="10.0.10.10" \
-e ENV_TOKEN="ATCW-OMVR-0RY4-LW1M-D9G9-H5VF-WPX5-YCXF" \
-e ENV_NO_CHECK_CERT="true" \
-v "/opt/my-html5-gateway-docker/config/:/etc/ipdiva/:rw" \
-v "/opt/my-html5-gateway-docker/log/:/var/log/:rw" \
--network="cyberelements-cleanroom-network" \
cleanroom-html5:4.6.1-33-v2

Fl-aħħar, il-fajl /etc/ipdiva/httpd/commonParameters.extra.conf fuq is-server(s) Mediation Controller għandu jiġi kkonfigurat. Għandha tiżdied it-taqsima li ġejja:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
<Location /HTML5_DOCKER/>
    Order allow,deny
    Allow from all
    RequestHeader set X-Forwarded-Proto "https"
    RequestHeader set X-IPdiva-Gateway my-edge-gateway-docker|
    RequestHeader set X-IPdiva-Orgname my-organization-name
    RequestHeader set X-IPdiva-Service my-html5-gateway-docker:8080

    ProxyPass http://127.0.0.1:9016/systanciaHTML5-6.0/ flushpackets=on
</Location>

<Location /HTML5_DOCKER/websocket-tunnel>
    Order allow,deny
    Allow from all
    RequestHeader set X-Forwarded-Proto "https"
    RequestHeader set X-IPdiva-Gateway my-edge-gateway-docker|
    RequestHeader set X-IPdiva-Orgname my-organization-name
    RequestHeader set X-IPdiva-Service my-html5-gateway-docker:8080

    ProxyPass ws://127.0.0.1:9016/systanciaHTML5-6.0/websocket-tunnel
</Location>

Qabel ma tapplika s-settings il-ġodda, trid tiċċekkja li l-konfigurazzjoni l-ġdida ma tikkawża ebda żball li jimblokka s-server web Apache2.
Biex tagħmel dan, ħaddem il-kmand li ġej:

1
apache2ctl configtest

Jekk ir-risposta hija Syntax OK, il-bidliet jistgħu jiġu applikati bil-kmand ta’ hawn taħt. Inkella, iċċekkja l-konfigurazzjoni tal-fajl /etc/ipdiva/httpd/commonParameters.extra.conf tiegħek.

1
systemctl reload apache2