Skip to content

Docker для сервера ESET remote administrator

Notifications You must be signed in to change notification settings

teamboxinc/era-docker

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 

Repository files navigation

ESET Remote Administrator on Docker Compose

イメージをビルドする

コンポーネントの配置

まず、ESET Remote Administratorのコンポーネントをダウンロードして、展開しておく。 そして、サーバーとWebコンソールのファイルを、適当に配置する。

$ mv Component_Linux_x64/era.war eraconsole/
$ ls eraconsole
Dockerfile  era.war  tomcat.sh
$ mv Component_Linux_x64/Server-Linux-x86_64.sh eraserver/
$ ls eraserver
Dockerfile  eraserver.sh  Server-Linux-x86_64.sh

MySQL ODBCのダウンロード

ここからMySQL ODBCをダウンロードする。(バージョン5系統でないと動かないので注意。) そして、eraserver以下に配置する。

$ ls eraserver/
Dockerfile  eraserver.sh  mysql-connector-odbc-5.3.10-linux-ubuntu16.04-x86-64bit  Server-Linux-x86_64.sh

MySQLの立ち上げ

セットアップ中にMySQLへ接続するため、先にMySQLのインスタンスを立ち上げておく。 一時的に、MySQLにアクセスできるように、ufwでファイアウォールを開けておく。

# ufw allow 3306

イメージのビルド

ホストのIPアドレスに合わせて、eraserver/Dockerfileの以下のIPアドレスを適宜変更する。

RUN echo "172.17.0.1 mysql" >> /etc/hosts && \
    /tmp/Server-Linux-x86_64.sh \
        --skip-license \
        --db-driver=MySQL \
        --db-type="MySQL Server" \
        --db-hostname=${DB_HOST} \
        --db-port=${DB_PORT} \
        --db-admin-username=${DB_ADMIN_USER} \
        --db-admin-password=${DB_ADMIN_PASS} \
        --db-user-username=${DB_USER} \
        --db-user-password=${DB_PASS} \
        --server-root-password=${ERA_ADMIN_PASS} \
        --cert-hostname=${ERA_HOST_NAMES} \
        --locale=ja-JP

あとは、ビルドが終わるのを待てば良い。

$ docker-compose build
...
$ docker-compose up -d

最後に、ファイアウォールをもとに戻しておく。

$ sudo ufw delete allow 3306

デプロイ

  • ufwで使うポートのファイアウォールを開ける
  • apachenginxなどのリバースプロキシで、コンソールにアクセスできるようにする

メモ

  • イメージのビルド中は、専用のネットワークが用いられるため、他のイメージを参照できない
    • network_mode: hostなども使えない
      • IPで指定すればホストにアクセス可能だが、ファイアウォールを開けておく必要がある
  • /etc/hostsがDockerに管理されているために、変更できない
    • 永続的に変更するには、docker-compose.yamlextra_hostsを追加する
      • ビルド時だけ参照するには、RUNの中では変更が保持されるので、echo "..." > /etc/hosts && ...が使える
  • ESET Remote Administratorのインストーラが/bin/systemctlを叩くとエラーが発生する
  • コンソールはlocalhostにサーバーがある前提でコネクションを行う
    • eraconsole/tomcat.shにあるように、WEB-INF以下のEraWebServerConfig.propertiesを無理やり書き換えればよい
  • 過去に使用していたデータベースからのマイグレーションであれば、ProductInstanceIDという環境変数を指定すればよいらしい
    • 詳しくはeraserver/eraserver.shをベースに調査が必要

About

Docker для сервера ESET remote administrator

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Dockerfile 73.2%
  • Shell 26.8%