0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Oracle 19c INS-30014:Docker Desktopのhosts行を外したら解決した(Windows)

Last updated at Posted at 2026-01-08

はじめに

Oracle 19cをWindowsにインストールしようとしたところ、インストーラでINS-30014が出てインストールすることが出来ませんでした。
原因は意外にもDocker Desktopがhostsに追加した名前解決エントリで、インストール中だけコメントアウトしたら解決しました。

同じエラーで詰まっている方向けに、再現しやすい状況・直し方・戻し方をまとめます。

この記事でわかること

  • INS-30014でOracle 19cのインストールが止まるときの、現実的な回避策
  • hosts / Docker Desktopが絡むときに起きがちなこと
  • Oracle 19cのインストール後に何を戻すべきか

TL;DR

Docker Desktopがhostsに追加した行を、インストール中だけコメントアウトすると通るケースがあります。

  1. hostsをバックアップ
  2. Docker Desktopセクションをコメントアウト
  3. ipconfig /flushdns
  4. Oracleインストーラを再実行
  5. インストール完了後、必要ならhostsを元に戻す(→ 再度 ipconfig /flushdns

環境

  • OS:Windows 11 Home
  • Oracle:19c
  • Docker Desktop:導入済み

症状

  • Oracle 19cをインストールしようとしたところ、INS-30014が表示され処理が止まる
  • 権限不足っぽい説明が出ることがあるが、管理者で起動しても改善しない

なぜこれが起きるのか

まずhostsとは?

Windowsのhostsは、「ホスト名(例:example.com)→ IPアドレス(例:93.184.216.34)」を対応づける、PC内の設定ファイルです。

普段はDNSに問い合わせて名前解決しますが、hostsに同じ名前が書かれている場合は、DNSより先にhostsが参照されるため、そこに書いたIPへ接続されます。
つまりhostsは「この名前は必ずこのIPにする」というローカルの上書きルールとして使えます。

Docker Desktopはなぜhostsを書き換えるの?

Docker Desktop は、コンテナからホストPCへアクセスしやすくするために、次のような特別な名前をhostsに追加することがあります。

  • host.docker.internal
  • gateway.docker.internal
  • kubernetes.docker.internal

Dockerを使う上では便利ですが、Oracleのインストーラが内部で行うネットワーク/名前解決の事前チェックと相性が悪いことがあり、その結果としてINS-30014が出るケースがあります。

ポイントはここで、Oracle本体が壊れているわけではなく、インストーラの事前チェックで躓いている、というタイプのトラブルです。

実際に入っていたhosts

自分の環境では次のような行が入っていました(IPは環境で変わります)。

# Added by Docker Desktop
192.168.1.x  host.docker.internal
192.168.1.x  gateway.docker.internal
# To allow the same kube context to work on the host and the container:
127.0.0.1    kubernetes.docker.internal
# End of section

解決手順(インストール中だけ回避する)

!注意!
hostsの編集には管理者権限が必要です。
会社PCなど管理ポリシーがある環境では、運用ルールに従ってください。
変更前に必ずバックアップを取ってください。

1) hostsをバックアップ

ファイル場所:

  • C:\Windows\System32\drivers\etc\hosts

このファイルを安全な場所にコピーしてください。

2) Docker Desktopの行をコメントアウト(IPは環境で変わります)

該当行の先頭に#を付けます(インストール中だけ)。

# Added by Docker Desktop
# 192.168.1.x  host.docker.internal
# 192.168.1.x  gateway.docker.internal
# To allow the same kube context to work on the host and the container:
# 127.0.0.1    kubernetes.docker.internal
# End of section

3) DNSキャッシュをクリア

管理者権限で起動したコマンドプロンプトで、以下のコマンドを実行:

ipconfig /flushdns

4) Oracleインストーラを再実行

この状態でOracle 19cのインストーラをやり直すと、私の環境ではINS-30014 が出ずに先に進めました。

インストール後はどうする?

hostsを元に戻すべき?

  • Dockerを普段使うなら、基本的に戻すのがおすすめ(*.docker.internal の名前解決が必要になることがあるため)
  • Dockerを使わないなら戻さなくても困らない場合もあります

もし元に戻したら、再度DNSキャッシュのクリアも忘れずに:

ipconfig /flushdns

※Docker Desktopを起動すると、hostsファイルが自動的に書き戻されます。手動で戻さなくても、Docker Desktop起動時に復元される可能性があります。

まとめ

  • INS-30014 は「権限不足」っぽく見えることがあるが、実際には名前解決やネットワーク判定が引き金のことがある
  • Docker Desktopがhostsに追加する*.docker.internalがインストーラのチェックと相性が悪い場合がある
  • インストール中だけコメントアウト → ipconfig /flushdns → 再実行で解決するケースがある
  • インストール後にDockerを使うならhosts を元に戻すのが無難(戻したら ipconfig /flushdnsも忘れずに)
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?