Pāriet uz saturu

HTML5 Gateway Docker instalēšana

Docker attēla importēšana

Pirms varat izveidot HTML5 Gateway Docker konteineru, ir jāimportē Docker attēls. Lai to izdarītu, atveriet čaulu, kurā jums ir pieejamas Docker komandas, kā arī fails cleanroom-html5-4.6.1-33-v2.tgz. Čaulā izpildiet šo komandu, pielāgojot ceļu uz TGZ failu, ja tas neatrodas pašreizējā direktorijā:

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

Pēc tam ar šo komandu pārbaudiet, vai importēšana bija sekmīga:

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

Paredzamā izvade ir šāda. Ja tā nav, importēšana nav izdevusies:

1
2
3
4
5
6
[
    {
        "Id": "sha256:16ae07f1604409f6b092a8a2944e69b3db458a04dbbab6ffc3f945c253c82cee",
        "RepoTags": [
            "cleanroom-html5:4.6.1-33-v2"
        ],
Pilna izvade
 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": ""
        }
    }
]

Konteinera konfigurācija

Vides mainīgie

Mainīgie izvietošanai, izmantojot pairing

Nosaukums Obligāts Noklusējuma vērtība Komentārs
ENV_MEDIATION JĀ Tiek izmantots pairing savienojumam.
Norāda DNS nosaukumu vai IP adresi savienojumam ar CyberElements Bastion platformas tīmekļa saskarni.
ENV_TOKEN JĀ Tiek izmantots pairing savienojumam.
Norāda pairing marķieri, kas jāizmanto savienojumam ar Mediation Controller.
ENV_NO_CHECK_CERT NĒ false Tiek izmantots pairing savienojumiem.
Norāda, vai atspējot Mediation Controller tīmekļa sertifikāta pārbaudi; noder ar CyberElements Bastion, ja piekļuve notiek, izmantojot IP adresi, vai ja tīmekļa sertifikāts nav sertifikāts, ko atpazīst noklusējuma publiskās sertificēšanas iestādes.
Pieņemtās vērtības: true vai false.

Mainīgie manuālai izvietošanai

Nosaukums Obligāts Noklusējuma vērtība Komentārs
ENV_GW_CERT_NAME JĀ Tiek izmantots savienojumam ar manuālu konfigurāciju.
Sertifikāta faila nosaukums savienojumam ar SSL Router.
ENV_GW_CERT_PASSWORD JĀ Tiek izmantots savienojumam ar manuālu konfigurāciju.
Sertifikāta faila parole savienojumam ar SSL Router.
ENV_SSL_ROUTER_IP JĀ Tiek izmantots savienojumam ar manuālu konfigurāciju.
Komponenta SSL Router IP adrese vai DNS nosaukums, ar kuru izveidos savienojumu HTML5 Gateway.
ENV_SSL_ROUTER_PORT NĒ 443 Tiek izmantots savienojumam ar manuālu konfigurāciju.
Komponenta SSL Router ports, ar kuru izveidos savienojumu HTML5 Gateway.

Dažādi mainīgie

Nosaukums Obligāts Noklusējuma vērtība Komentārs
ENV_DISABLE_RSYSLOG NĒ false Pakalpojuma rsyslog atspējošana.
Pieņemamās vērtības: true vai false.

Sējumi

Sējums Komentārs
/etc/ipdiva/ HTML5 Gateway konfigurācijas sējums.
Ieteicams to uzstādīt nosauktā sējumā vai resursdatora failu sistēmā.
/opt/certificates/ Sējums, kurā ir HTML5 Gateway sertifikāts(-i), ja konfigurē bez pairing.
/var/log/ Sējums, kurā ir HTML5 Gateway žurnāli.

Porti

Ports Komentārs
8080 HTML5 pakalpojuma klausīšanās ports.

HTML5 Gateway Docker izvietošana

Izvietošana, izmantojot pairing

Priekšnosacījumi

Pirms HTML5 Gateway Docker izvietošanas ir jāiegūst pairing marķieris.

Tālāk aprakstītajā izvietošanā tiks izmantoti visi pieejamie sējumi (izņemot /opt/certificates/, kas šajā kontekstā nav noderīgs) un padarīti pieejami visi porti.
Sējumi tiks uzstādīti resursdatora failu sistēmā atrašanās vietā HTML5_GATEWAY_REP. Šajā atrašanās vietā ir šādi apakšdirektoriji:

  • config
  • log

Tālāk norādīto komandu mainīgos varat pielāgot:

Pielāgotā vērtība Mainīgais Komentārs
DOCKER_NAME Docker konteinera nosaukums.
HTML5_GATEWAY_REP Atrašanās vieta failu sistēmā, kurā uzstādīt sējumus.
ENV_MEDIATION_VALUE Vides mainīgā ENV_MEDIATION vērtība.
ENV_TOKEN_VALUE Vides mainīgā ENV_TOKEN vērtība.
ENV_NO_CHECK_CERT_VALUE Vides mainīgā ENV_NO_CHECK_CERT vērtība.

Izveidojiet direktoriju koku, kas nepieciešams sējumu piemontēšanai failu sistēmā:

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"

Un visbeidzot palaidiet jaunu konteineru:

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

Konteinera žurnālus var skatīt, izmantojot šo komandu:

1
docker logs -f DOCKER_NAME

Manuāla izvietošana

Priekšnosacījumi

Pirms HTML5 Gateway Docker izvietošanas jums ir jābūt HTML5 Gateway nepieciešamajam sertifikātam.

Paroles, kas redzamas ar docker inspect

Konteinera vides mainīgos, tostarp sertifikātu paroles, var nolasīt ikviens, kam Docker serverī ir atļauts izpildīt docker inspect. Tāpēc ieteicams izmantot izvietošanu ar pairing, kurai nav vajadzīga sertifikāta parole.

Tālāk aprakstītā izvietošana izmantos visus pieejamos sējumus un padarīs pieejamus visus portus.
Sējumi tiks pievienoti resursdatora failu sistēmā vietā MANUAL_REP. Šajā vietā atrodas šādas apakšmapes:

  • config
  • log
  • certificates

Tālāk norādīto komandu mainīgos varat pielāgot:

Pielāgotā vērtība Mainīgais Komentārs
MANUAL_NAME Docker konteinera nosaukums.
MANUAL_REP Vieta failu sistēmā, kur pievienot sējumus.
ENV_GW_CERT_NAME_VALUE Vides mainīgā ENV_GW_CERT_NAME vērtība.
ENV_SSL_ROUTER_IP_VALUE Vides mainīgā ENV_SSL_ROUTER_IP vērtība.
ENV_SSL_ROUTER_PORT_VALUE Vides mainīgā ENV_SSL_ROUTER_PORT vērtība.

Izveidojiet direktoriju koku, kas nepieciešams sējumu piemontēšanai failu sistēmā:

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"

Pēc tam ievietojiet HTML5 Gateway un ierakstīšanas pakalpojuma sertifikātus direktorijā MANUAL_REP/certificates.

Lai sertifikātu paroles netiktu saglabātas čaulas vēsturē, ievadiet tās pašreizējās sesijas vides mainīgajos (ievadītais netiek rādīts):

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

Visbeidzot palaidiet jaunu konteineru:

 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

Kad konteiners ir palaists, noņemiet šos mainīgos no sesijas:

1
unset ENV_GW_CERT_PASSWORD
1
Remove-Item Env:ENV_GW_CERT_PASSWORD

Konteinera žurnālus var skatīt, izmantojot šo komandu:

1
docker logs -f MANUAL_NAME

Mediation Controller konfigurēšana

Lai jaunais HTML5 Gateway Docker būtu darbspējīgs, vēl ir jākonfigurē Mediation Controller serveris, izmantojot SSH vai konsoles piekļuvi un root atļaujas.

Šis pēdējais iestatījums ir nepieciešams, lai komponents Mediation Controller varētu sazināties ar HTML5 pakalpojumu.
Tomēr šī konfigurācija atšķiras atkarībā no HTML5 Gateway Docker atrašanās vietas:

Vispārējā shēma ir šāda:

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

    subgraph LAN
        GW(Edge Gateway)
    end


    MED -.-> |Savienojums ar HTML5 pakalpojumu ; 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

Šajā kontekstā tālāk sniegtā informācija būs jāpievieno failam /etc/ipdiva/httpd/commonParameters.extra.conf vai šis fails jāizveido.
Iestatījumus var pielāgot:

Pielāgotā vērtība Mainīgais Komentārs
HTML5_URL_DMZ URL, kas konfigurēts, deklarējot HTML5 Gateway administrēšanas konsolē.
HTML5_IP_DMZ Tā Docker servera DNS nosaukums vai IP adrese, kurā ir aktīvs HTML5 Gateway Docker.
HTML5_PORT_DMZ Ports, ko Docker serveris publicē HTML5 Gateway Docker vajadzībām.
 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>

Vispārējā shēma ir šāda:

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

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


    MED -.- | Savienojums ar HTML5 pakalpojumu ; caur TLS tuneli| GW -.-> |Savienojums ar HTML5 pakalpojumu ; TCP 8080| HTML5
    HTML5 --> |TLS Tunnel| MED
    GW --> |TLS Tunnel| MED

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

Šajā kontekstā tālāk sniegtā informācija būs jāpievieno failam /etc/ipdiva/httpd/commonParameters.extra.conf vai šis fails jāizveido.
Iestatījumus var pielāgot:

Pielāgotā vērtība Mainīgais Komentārs
HTML5_URL_LAN URL, kas konfigurēts, deklarējot HTML5 Gateway administrēšanas konsolē.
GW_NAME_LAN Tā Edge Gateway nosaukums, ko izmanto savienojumam ar HTML5 pakalpojumu. Vertikālās joslas rakstzīme rindas beigās ir jāsaglabā.
ORGANIZATION_NAME_LAN Tās organizācijas nosaukums, ar kuru izveido savienojumu Edge Gateway.
HTML5_IP_LAN Tā Docker servera DNS nosaukums vai IP adrese, kurā ir aktīvs HTML5 Gateway Docker.
HTML5_PORT_LAN Ports, ko Docker serveris publicē HTML5 Gateway Docker vajadzībām.
 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>

Padoms

Šo konfigurāciju var izmantot arī tālāk aprakstītajā situācijā, kad Docker Edge Gateway un Docker HTML5 Gateway darbojas vienā Docker tīklā:

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 -.- | Savienojums ar HTML5 pakalpojumu ; caur TLS tuneli| GW -.-> |Savienojums ar HTML5 pakalpojumu ; TCP 8080 caur Docker tīklu| HTML5
    HTML5 --> |TLS Tunnel| MED
    GW --> |TLS Tunnel| MED

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

Šajā piemērā mēs izvietosim Edge Gateway un HTML5 Gateway vienā Docker serverī.

Piemērā izmantotā infrastruktūra ir šāda:

  • Mediation Controller serveris
    • Tīmekļa IP adrese: 10.0.10.10
    • Organizācijas nosaukums: my-organization-name
    • Edge Gateway marķieris: YJ5N-JN05-N5LS-N26H-7JHA-HZ9R-BGJF-MAVH
    • HTML5 Gateway marķieris: ATCW-OMVR-0RY4-LW1M-D9G9-H5VF-WPX5-YCXF
    • URL piekļuvei HTML5 pakalpojumam: HTML5_DOCKER
  • Docker serveris
    • Docker tīkla nosaukums: cyberelements-cleanroom-network
    • Edge Gateway
      • Nosaukums: my-edge-gateway-docker
      • Saknes atrašanās vieta failu sistēmā: /opt/my-edge-gateway-docker
    • HTML5 Gateway
      • Nosaukums: my-html5-gateway-docker
      • Saknes atrašanās vieta failu sistēmā: /opt/my-html5-gateway-docker

Vispirms Docker serverī ir jāizveido direktoriju struktūra Docker sējumu uzstādīšanai:

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

Pēc tam izveidojiet bridge tipa Docker tīklu, lai abi konteineri varētu savstarpēji sazināties:

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

Pēc tam startējiet Edge Gateway konteineru. Ņemiet vērā, ka piemērā savienojums tiek izveidots, izmantojot pairing, ar piekļuvi komponentam Mediation Controller, izmantojot tā IP adresi, un bez sertifikāta pārbaudes. Turklāt tiek pievienots parametrs --network, lai norādītu iepriekš izveidotā Docker tīkla izmantošanu:

 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

Pēc tam startējiet HTML5 Gateway konteineru. Ņemiet vērā, ka piemērā savienojums tiek izveidots, izmantojot pairing, ar piekļuvi komponentam Mediation Controller, izmantojot tā IP adresi, un bez sertifikāta pārbaudes. Turklāt tiek pievienots parametrs --network, lai norādītu iepriekš izveidotā Docker tīkla izmantošanu, un, tā kā piekļuve HTML5 pakalpojumam notiks caur Docker tīklu, porta 8080 publicēšana nav nepieciešama:

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

Visbeidzot ir jākonfigurē fails /etc/ipdiva/httpd/commonParameters.extra.conf Mediation Controller serverī(-os). Jāpievieno šāda sadaļa:

 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>

Pirms jauno iestatījumu lietošanas jāpārbauda, vai jaunā konfigurācija neizraisa Apache2 tīmekļa servera bloķējošas kļūdas.
Lai to izdarītu, izpildiet šādu komandu:

1
apache2ctl configtest

Ja tiek atgriezts Syntax OK, izmaiņas var lietot ar tālāk norādīto komandu. Pretējā gadījumā pārbaudiet sava faila /etc/ipdiva/httpd/commonParameters.extra.conf konfigurāciju.

1
systemctl reload apache2