目次
こんにちは。大友(@yomon8)です。
SAP関連技術に強いBeeXにおいて、私自身はSAPと関わりの薄い仕事ばかりしているのですが、1~2年に1回くらい、忘れた頃に触る必要が出てきます。
大抵はSAPの深い技術というよりは、あるプログラム言語からの接続確認だったり、簡単な検証環境さえあれば何とかなる要件です。
今回はDockerコンテナを利用するのですが、数年前は立ち上げるだけても色々必要だった記憶があります。
こちらのイメージを使えば30分くらいでSAPにログオンできる状態になるという記事になります。
前提
30分と時間を決めたからには前提がゼロだと厳しいので以下を前提とさせてください。
- SAP GUIがPCにインストールされている
- EC2等のすぐに利用可能なLinux環境がある(今回の例ではEC2を利用します)
以上の2点です。
利用するコンテナイメージはこちらになります。
https://hub.docker.com/r/sapse/abap-platform-trial
作業
Linux環境の準備(5分)
今回はAWSを使ってEC2を以下の環境を立ち上げます。
Linuxの場合は4 CPUs、16GB RAM、150GB Diskが推奨と書いてあるので、
Amazon Linux 2023のt3.xlargeインスタンスに150GBのEBSをアタッチして起動します。
これで5分。
Dockerのインストール(2分)
SSHでログインしたらDockerをインストールして起動します。
2分もかからないですが、2分で。
$ sudo dnf -y install docker
$ sudo systemctl start docker
$ sudo systemctl enable docker
Docker HubよりコンテナイメージのPull(15分)
ここが一番かかります。ネットワーク次第ですが私の環境では15分程度でしたが、環境やネットワーク状況によってはそれ以上かかる可能性もあります。その場合は全体で30分超えてしまいそうです。。。
$ sudo docker pull sapse/abap-platform-trial:1909
コンテナ起動(3分)
コンテナイメージがPullできれば以下のコマンドでABAPインスタンスが立ち上がります。
$ sudo sudo docker run --rm --stop-timeout 3600 -i \
--name a4h \
-h vhcala4hci \
-p 3200:3200 \
-p 3300:3300 \
-p 8443:8443 \
-p 30213:30213 \
-p 30215:30215 \
-p 50000:50000 \
-p 50001:50001 \
--sysctl kernel.shmmax=21474836480 \
--sysctl kernel.shmmni=32768 \
--sysctl kernel.shmall=5242880 \
--sysctl kernel.msgmni=1024 \
--sysctl kernel.sem="1250 256000 100 8192" \
--ulimit nofile=1048576:1048576 \
sapse/abap-platform-trial:1909 -skip-limits-check -agree-to-sap-license
起動処理が完了すると以下のようなメッセージが表示されると思います。
*** All services have been started. ***
***
*** To stop and be able to safely start again use Ctrl-C
*** Or use the stop command with timeout: docker stop -t 7200 ...
***
*** Have fun! ***
SAP GUIからログオン(3分)
以下の設定で接続していきます。
※アプリケーションサーバーのところはホスト名やIPアドレスに読み替えてください
ユーザとパスワードはDocker Hubのリンク先に記載されています。(リンク先をpasswordで検索してみてください)
クライアントは000と001があるのでどちらかを指定して、ユーザはsap*を指定してログオンしてください。
これでログオンできると思います。docker pullのコマンド以外は、時間かからずに実施できるのではと思います。
環境情報
今回立ち上げた環境の情報を一部貼り付けておきます。
最後に
30分程度で立ち上げが可能だったので記事にしてみました。10年くらい前は自分でインストールメディアを準備して検証環境をインストールしていたのを思い出しました。
今回、速度重視だったのでSAP GUIの周りや、ライセンス周りをスキップしてしまいましたが、その辺りの情報を知りたい場合は弊社のメンバーがQiitaに書いた以下の記事が参考になると思いますのでご紹介しておきます。
https://qiita.com/SAITO_Keita/items/d826c66d0853282f4b9c