도커 환경
윈도우 설정
- Hyper-V : 윈도우용 가상머신(VM)
- Linux 용 Windows 하위 시스템 : WSL기반 리눅스 가상화기술
윈도용 도커 설치
https://docs.docker.com/get-docker/
DockerCompose 디버깅환경
도커 오픈스택 + 도커화된 자신의 어플리케이션을 로컬컴퓨터 한곳에 띄워 로컬개발환경을 구축할때 유용합니다.
도커용 프로젝트 및 도커 컴포즈 추가
docker-compose.dcproj
<?xml version="1.0" encoding="utf-8"?> <Project ToolsVersion="15.0" Sdk="Microsoft.Docker.Sdk"> <PropertyGroup Label="Globals"> <ProjectVersion>2.1</ProjectVersion> <DockerTargetOS>Linux</DockerTargetOS> <ProjectGuid>GUID툴로 생성....</ProjectGuid> <DockerLaunchAction>None</DockerLaunchAction> <DockerServiceUrl>{Scheme}://localhost:{ServicePort}/swagger</DockerServiceUrl> <DockerServiceName>akkanetcore</DockerServiceName> </PropertyGroup> <ItemGroup> <None Include="docker-compose.yml" /> <None Include=".dockerignore" /> </ItemGroup> </Project>
docker-compose.yml
version: '3.4' services: lighthouse: image: ${DOCKER_REGISTRY-}lighthouse build: context: . dockerfile: ../LightHouse/Dockerfile environment: CLUSTER_IP: lighthouse CLUSTER_PORT: 4053 CLUSTER_SEEDS: akka.tcp://actor-cluster@lighthouse:4053 ports: - 4054:4053 - 9111:9110 akkadb: image: mysql:5.7 command: --default-authentication-plugin=mysql_native_password ports: - 33061:3306 volumes: - ./firstsql.mysql:/docker-entrypoint-initdb.d/init.sql:ro environment: MYSQL_ROOT_PASSWORD: root zookeeper: image: 'bitnami/zookeeper:latest' ports: - '2181:2181' environment: - ALLOW_ANONYMOUS_LOGIN=yes kafka: hostname: kafka image: 'bitnami/kafka:latest' ports: - '9092:9092' environment: - KAFKA_ADVERTISED_HOST_NAME=kafka - KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 - ALLOW_PLAINTEXT_LISTENER=yes
docker-compose 의 문법을 그대로 이용합니다.
솔류션에 프로젝트 추가
디버깅없이 시작하거나, 디버깅을 수행할수 있습니다.
솔류션 내에서 컨테이너 확인가능
Visual Studio 를 닫게되면, 자동으로 컨테이너들을 정리합니다. ( 옵션 )
참고: