You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Current »

호스트가 윈도우인 도커는 추천하지 않는다.

CoreOS에 비해 Windows Server OS의 기본 사이즈도  크고 더 높은 리소스가 요구되기 때문이다. 덤으로 OS라이센스 비용도 생각해야한다.

만약 윈도우 종속적인 기능을 사용하기위해 도커화한다고 하면, 온프레미스에서 직접 셋팅한 윈도우를 사용하던지

MS 클라우드를 사용하는것이 정신건강에 좋다.


리눅스 환경에서 셋팅된 란쳐 구성요소에서, 윈도우 호스트 에이전트와 조합하는것을  실패한상황... 윈도우와 리눅스를 혼용한 환경을 셋팅한다고 하면 Hyper-V 기반에서 다시 출발,

액티브x또는 윈도우종속 기능이 필요하거나 윈도우 VM이 필요한 경우가 있어서 시도되었으며


윈도우 호스트에서 도커를 추가하여,도커 내에서 IIS와 Net45를 이용하는 웹서비스 구동이 가능할까? 가능하다.

도커 컨테이너는 HostOS의 커널 기능을 사용할수 있으며 , 윈도우 Host인경우 윈도우기능을 사용할수 있다.


OS 설치정보

Vagrant

Vagrantfile
# -*- mode: ruby -*-
# vi: set ft=ruby :

# All Vagrant configuration is done below. The "2" in Vagrant.configure
# configures the configuration version (we support older styles for
# backwards compatibility). Please don't change it unless you know what
# you're doing.
Vagrant.configure("2") do |config|
  # The most common configuration options are documented and commented below.
  # For a complete reference, please see the online documentation at
  # https://docs.vagrantup.com.

  # Every Vagrant development environment requires a box. You can search for
  # boxes at https://vagrantcloud.com/search.
  config.vbguest.auto_update = false
  config.vm.box = "StefanScherer/windows_2019_docker"
  config.vm.hostname = "docker3"
  config.vm.network "private_network", ip: "192.168.56.203"
  config.vm.provider "virtualbox" do |vb|
  #   # Display the VirtualBox GUI when booting the machine
  #   vb.gui = true
     vb.memory = "2048"
  end
  #
  # View the documentation for the provider you are using for more
  # information on available options.

  # Enable provisioning with a shell script. Additional provisioners such as
  # Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the
  # documentation for more information about their specific syntax and use.
  # config.vm.provision "shell", inline: <<-SHELL
  #   apt-get update
  #   apt-get install -y apache2
  # SHELL
end


https://www.veeam.com/blog/windows-server-2016-core-installation-steps.html

Install-Module DockerMsftProvider -Force
Install-Package Docker -ProviderName DockerMsftProvider -Force

윈도우(닷넷45) 기능을 이용할수 있는 Dockerfile

Dockerfile
FROM microsoft/iis:10.0.14393.206
MAINTAINER alexellis2@gmail.com


SHELL ["powershell"]

RUN Install-WindowsFeature NET-Framework-45-ASPNET ; \
    Install-WindowsFeature Web-Asp-Net45

COPY VoteService VoteService
RUN Remove-WebSite -Name 'Default Web Site'
RUN New-Website -Name 'VoteService' -Port 80 \
    -PhysicalPath 'c:\VoteService' -ApplicationPool '.NET v4.5'
EXPOSE 80

CMD Write-Host IIS Started... ; \
    while ($true) { Start-Sleep -Seconds 3600 }



윈도우 HOST에서 Docker 구동 모습


ssh가 기본으로 작동이 안되며, power shell 또한 VM을 구동하는 Host가 윈도우여만 하기때문에

Rancher Agent 설치는 VM을 이용하여 GUI 화면에서 설치가능하다. UI가 없는 깡통 윈도우 서버이지만

성능 모니터링을 포함하여 몇몇 시스템툴은 GUI 제공을 해준다.

Rancher Agent 설치후에는 웹에서 컨테이너 제어가 가능하기때문에 이 화면을 접근할일은 없을것이다. 


윈도우용 Agent : https://rancher.com/docs/rancher/v1.6/en/windows/



  • No labels