AdminerのOracle対応
昨日はとりあえず動くところまでできたので、Dockerfileを整えてみた。 https://github.com/umemak/docker-adminer/blob/master/4/Dockerfile イメージサイズ800MB弱。 もっとスリム化できないかな。
POSTS
昨日はとりあえず動くところまでできたので、Dockerfileを整えてみた。 https://github.com/umemak/docker-adminer/blob/master/4/Dockerfile イメージサイズ800MB弱。 もっとスリム化できないかな。
昨日の続き。 とりあえず接続してテーブル一覧作ったりテーブル作成したりできた。 Docker + Laravel + Oracleの開発環境の構築方法が参考になった。
Adminer - Database management in a single PHP fileのDockerイメージAdminer - Official Image | Docker Hubは、Oracle接続に必要なモジュールが入っていない。 PHP: インストール/設定 - Manualによると、Instant Client for Linux x86-64 (64-bit)のBasicと、oci8が必要らしい。 DockerfileはOfficial Imageの Read more
go-oci8を使ったイメージの、oraclelinux8をベースイメージにしたやつが1.25GBにもなったので、もっと小さくならないか試してみた。 golang:1-bullseyeをベースにした場合、rpmが使えないのでOracleInstantClient関連のzipを展開する方法でやって、1. Read more
昨日は、mattn/go-oci8: Oracle driver for Go using database/sqlとsijms/go-ora: Pure go oracle clientを使ったサンプルをコンテナ上でgo runして動かしていた。 今日はgo buildでバイナリにして実行できるようにしてみる。 何もオプション付けずにビルドしたら、どちらも問題なし。 バイナリサ Read more
docker-images/OracleDatabase/SingleInstance at main · oracle/docker-imagesはクライアント側みたいにビルド済みイメージが用意されていないのかな、と思ったらOracle Container Registryにそれらしいものを見つけた。 Home > Database > express $ docker pull container-registry.oracle.com/database/express:latest サイズやばい $ docker images | grep ora oraclelinux 8 3bbe8a2c4b82 9 days ago 226MB oraclelinux 8-slim 1fcc1e6dda05 3 weeks ago 101MB container-registry.oracle.com/database/express latest e986fd612413 2 months ago 11.2GB $ docker run -d container-registry.oracle.com/database/express $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES Read more
前の記事でsqlplusで接続できたので、Goのプログラムから接続してみる。 instantclientベースでGoをインストールするDockerfile作成 FROM ghcr.io/oracle/oraclelinux8-instantclient:21 RUN yum install -y wget tar RUN wget https://go.dev/dl/go1.18.3.linux-amd64.tar.gz RUN rm -rf /usr/local/go && tar -C /usr/local -xzf go1.18.3.linux-amd64.tar.gz ENV PATH="${PATH}:/usr/local/go/bin" CMD [ "go", "version" ] docker-composeもそれを使うように修正 version: '3' services: db: image: container-registry.oracle.com/database/express ports: - 1521:1521 environment: - ORACLE_PWD=OraclePwd cli: build: . image: oraclegocli tty: true Read more
mattn/go-oci8: Oracle driver for Go using database/sqlでやってみる。 sh-4.4# go run go-oci8/main.go # pkg-config --cflags -- oci8 pkg-config: exec: "pkg-config": executable file not found in $PATH sh-4.4# yum install -y pkgconfig sh-4.4# go run go-oci8/main.go # pkg-config --cflags -- oci8 Package oci8 was not found in the pkg-config search path. Perhaps you should add the directory containing `oci8.pc' to the PKG_CONFIG_PATH environment variable Package 'oci8', required by 'virtual:world', not found pkg-config: exit status 1 とりあえずmain.goと同じところにoci8.pcを作成。中身はExamples。 sh-4.4# export PKG_CONFIG_PATH=. sh-4.4# go run go-oci8/main.go # github.com/mattn/go-oci8 cgo: C compiler "gcc" not found: exec: "gcc": Read more
oracle/docker-images: Official source for Docker configurations, images, and examples of Dockerfiles for Oracle products and projects にまとめられている。 サーバー側:docker-images/OracleDatabase at main · oracle/docker-images クライアント側:docker-images/OracleInstantClient at main · oracle/docker-images ベースイメージはOraclelinux - Official Image | Docker Hubが使われている(結構でかい) Read more
https://ochacafe.connpass.com/event/152768/ 番外編の第1回。高可用性の話です。 きました pic.twitter.com/plY4jy7rsN — umemak (@umemak8) November 29, 2019 18:30 受付開始 19:00 オープニング 19:10 セッション開始 https://speakerdeck.com/mmarukaw/oracleclouddekao-erugao-ke-yong-xing-akitekutiya データセンター電源障害の話から OCIはまだ日本に来てから日が浅いこともあり、大規模障害はまだない。 海外ではあった Design For Failure サーバーは落ちる前提で考える クラウドベンダーの保証はSLA Read more