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?

More than 1 year has passed since last update.

Windows Server 2019でDocker動かしたメモ

Last updated at Posted at 2022-09-06

発端

→ PostgreSQLの検証環境欲しいなぁ
→ 複数バージョン分欲しいなぁ
→ いくつもVM立てるのリソースもったいないなぁ
→ コンテナやってみるか
→ Linuxあんまり得意じゃないんよなぁ
→ Windows ServerでDocker立ててみよう
→ リソース効率重視でHyper-Vコンテナ使わずにやってみよう

参考サイトはまとめて後述

インストール&再起動

Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12;
Install-Package -Name docker -ProviderName DockerMsftProvider

しかしイキナリここで「パッケージソースが見つかりません」…
プロキシ環境で通信ができない状態でコマンド叩くとPSGalleryが壊れるらしい…
プロキシ設定とか通信通るようにして

Register-PSRepository -Default 

で復旧。(結局この復旧に一番時間かかkった)

コンテナイメージ取得

dockerHubからじゃなくてMicrosoft Artifact Registryから取った方がいいぽい?

docker pull mcr.microsoft.com/windows/servercore/iis:windowsservercore-ltsc2019 

コンテナ起動

docker run -d -p 80:80 mcr.microsoft.com/windows/servercore/iis:windowsservercore-ltsc2019

コンテナ停止

docker ps
CONTAINER ID           IMAGE
【動いてるコンテナのID mcr.microsoft.com/windows/se (以下略)

docker kill 【動いてるコンテナのID

コンテナへのファイルコピー

docker cp 【コピーするホストのファイル】 【動いてるコンテナのID:【コンテナ内のコピー先】
#例 / コンテナID=123456789abc
docker cp .\index.html 123456789abc:"C:\inetpub\wwwroot\"

コンテナのPowerShell起動

docker container exec -it 【動いてるコンテナのID powershell

とりあえずPostgreSQLのインストーラーダウンロードしてコンテナにコピーして実行してみたけどちゃんと入るかなぁ?
Dockerファイルとか自動化はまた今度気が向いたらやろう。

参考サイト

How-to's - コンテナでPowerShellを実行する方法

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?