Blockdiage는 MacOSX에 쉽게 설치할 수 없기 때문에 그용 Docker 이미지를 제작합니다
블로그란?
MacOSX에서 Docker 사용
boot2 docker를 사용합니다.힘내라, 앵무새.이 부분의 세부 사항을 나는 좋아하지 않는다.
http://docs.docker.com/installation/mac/
실행 가능한 페이지 만들기
설치 패키지가 너무 많은지 확인하지 않았습니다.일단 Version을 이동합니다.
Dockerfile
FROM centos:centos6
MAINTAINER kozy4324 <[email protected]>
RUN yum install -y gcc zlib-devel freetype-devel tkinter python-devel python-setuptools python-imaging ipa-gothic-fonts
RUN easy_install blockdiag
RUN echo "[blockdiag]" > $HOME/.blockdiagrc
RUN echo "fontpath = /usr/share/fonts/ipa-gothic/ipag.ttf" >> $HOME/.blockdiagrc
파일이 있는 디렉토리에서 다음 명령을 실행합니다.$ docker build -t kozy4324/blockdiag:1.0 .
만약 문제없이 실행한다면 이미지는 현지에서 완성해야 한다.$ docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
kozy4324/blockdiag 1.0 45f55ed1d843 12 minutes ago 440.8 MB
centos centos6 510cf09a7986 3 weeks ago 202.6 MB
실행
문서 페이지의 견본을 복사합니다.font 설정도 확인하고 싶어 일본어를 포함했습니다.호스트 측 (또는 MacOSX 측, 귀찮음) 에서 다음 파일을 만듭니다.
a.diag
blockdiag admin {
// Set M17N text using label property.
A [label = "起"];
B [label = "承"];
C [label = "転"];
D [label = "結"];
A -> B -> C -> D;
// Use M17N text directly (need to quote).
春 -> 夏 -> 秋 -> 冬;
// Use M17N text including symbol characters (need to quote).
"春は 曙" -> "夏 = 夜" -> "秋.夕暮れ" -> "冬 & つとめて";
}
이 a.diag
가 있는 디렉터리에서 실행합니다.아무튼 이런 느낌.$ docker run -v $(pwd):/host kozy4324/blockdiag:1.0 /bin/bash -c "cd /host; blockdiag *.diag"
이렇게 하면 출력 이하a.png
.-v
호스트 측과 용기 측이 디렉터리를 공유하고 용기 측의 이 공유된 디렉터리에서 명령을 실행합니다.호스트 옆에 있는 파일을 용기 옆에 입력해서 프로그램을 실행하는 좋은 방법이 없습니까?제2차 이후의 집행
매번
$ docker run
이면 실행이 끝난 컨테이너가 쓰레기처럼 쌓여 짜증이 난다.$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8686eb236bed kozy4324/blockdiag:1.0 "/bin/bash -c 'cd /h 3 seconds ago Exited (0) 2 seconds ago boring_pike
753add1a3804 kozy4324/blockdiag:1.0 "/bin/bash -c 'cd /h 5 seconds ago Exited (0) 4 seconds ago silly_bell
71d2348acd80 kozy4324/blockdiag:1.0 "/bin/bash -c 'cd /h About a minute ago Exited (0) 16 seconds ago drunk_goldstine
어쨌든 다 삭제해.$ docker rm $(docker ps -a -q)
(한 번 실행된 몸으로) 용기 ID$ docker start
를 지정해서 실행하면 쓰레기가 쌓이지 않을 수 있습니다.$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7e2d612435dc kozy4324/blockdiag:1.0 "/bin/bash -c 'cd /h 9 seconds ago Exited (0) 8 seconds ago boring_mayer
$ docker start 7e2d612435dc
7e2d612435dc
Docker Hub에서 미리 push
$ docker push kozy4324/blockdiag:1.0
총결산
Docker file이 있으므로 Docker Hub도 환경 친화적
$ docker pull kozy4324/blockdiag
Reference
이 문제에 관하여(Blockdiage는 MacOSX에 쉽게 설치할 수 없기 때문에 그용 Docker 이미지를 제작합니다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kozy4324/items/ff54f3640b577710e1be텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)