전체 글
Type.Memberinfo 클래스를 이용하여 Assembly의 각종 정보를 얻을 수 있다. 멤버변수의 이름, 메소드의 이름, 파라메터, 프로퍼티, 이벤트 등등 거의 모든 정보를 얻을 수 있다. 본 예제는 이중 멤버변수, 메소드, 프로퍼티 등 의 이름을 string 타입으로 리턴 받는다. 동적으로 load한 어셈블리를 다룰때 한가지 주의사항이 있다. main AppDomain에서 직접 어셈블리를 load하지 않아도 type 클래스의 객체로 해당 어셈블리의 정보를 리턴 받는다면 내부적으론 main AppDomain에서 직접 어셈블리를 load한다. 그럼 동적으로 load한 어셈블리의 unload가 불가능해진다(프로그램 종료 전까지는). 때문에 main AppDomain이 아닌 sub AppDomain에서 ..
우리가 어떤 모듈을 어셈블리 단위로 제공을 한다고 가정해보자. 해당 모듈이 업데이트되었을 경우 기존에 load 되어 있는 어셈블리는 unload 시키고 다시 새로운 어셈블리를 load 하는 작업(re-load)을 거치기만 한다면, 해당 응용프로그램은 종료 없이 언제든 업데이트될 수 있을 것이다. 하지만, dotnet환경에서 동적으로 load된 어셈블리를 unload를 하는 행위는 그리 만만한 작업이 아니다. msdn에 나와있듯 도메인에 중립적인 어셈블리는 전체 프로세스가 종료될 때까지 메모리에 잔류하며, 해당 어셈블리를 unload 하는 유일한 방법은 프로세스를 종료하는 것이라고 한다. 프로세스를 종료하지 않고 어셈블리를 unload 하기 위하여 여러 방법(Shadow Copy 등)을 찾아 시도해 보았으..
1. Image Tagging ## Docker Image Tagging ## docker image tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG] docker tag hellodocker dmltjq2524/hellodocker:0.0.1 2. Image Upload(push) ## docker image push command ## docker push [OPTIONS] NAME[:TAG] ## docker push를 통해 dockerhub에 업로드한 이미지는 ## docker run을 이용해 run할 수 있다. docker push dmltjq2524/hellodocker:0.0.1 Summary ## Docker Image Tagging docker image tag ..
1. Docker Image Build ##Image Build Command ##docker build [OPTIONS] PATH | URL | - ##repository에 들어가는 docker image 이름은 반드시 소문자로 작성해야한다. docker build -t hellodocker C:\\Users\\ISET-DA\\Workplace\\Docker\\docker-get-started 2. Docker Container run, stop, remove ## Container Run Command ##docker run [OPTIONS] IMAGE [COMMAND] [ARG...] ## -p 옵션이 아닌 -d 옵션을 주면 Background에서 동작한다 docker run -p 4000:80 h..
## List Docker CLI commands docker docker container --help ## Display Docker version and info docker --version docker version docker info ## Execute Docker image docker run hello-world ## List Docker containers docker container ls docker container ls --all docker container ls --help Reference - docs.docker.com/get-started/ Orientation and setup docs.docker.com