[sbt] 1.3.0

scala 2019. 9. 6. 10:22



https://github.com/sbt/sbt/releases/tag/v1.3.0


sbt 1.3.0에 병렬 라이브러리 다운로드 cousier를 포함하게 되었다.

super shell도 있고..

Posted by '김용환'
,



ingress nginx 에 인증서 추가하는 방법이다. 

1. context 변경하기
kubectl config use-context google-production-context

2. kakao.com secret 생성하기
kubectl create secret tls google-com --key google.com.key --cert google.com.crt

3. kakao.com secret 확인하기
kubectl describe secret google-com

4. 인증서 확인하기
kubectl get cm -n ingress-nginx ingress-nginx -o yaml



kubernetes 설정 파일에 추가하기

spec:
tls:
- hosts:
- server_name aa.google.com
secretName: google-io


Posted by '김용환'
,

https://www.entrepreneur.com/article/336964



- 페이스북은 미국 내 성인의 69%가 사용하는 SNS이지만, 광고는 여전히 사적 공간의 ‘방해 요소’로 받아들이고 있어서 이커머스 광고를 제대로 전달하지 못하고 있다.

- 아마존은 구매 목표를 가진 사용자가 방문하는 커머스 플랫폼이다.

44%의 온라인 구매자는 처음부터 아마존의 상품 검색을 사용한다. 아마존의 영업 규모에 따라 검색 결과가 달라진다. 

구매자가 자발적으로 별점과 리뷰를 남기는 실용적인 장점을 갖는다

다양한 광고 플랫폼을 갖고 있다. 



Posted by '김용환'
,


여러 라인으로 구성된 내용을 특정 파일로 저장할 때 cat << 커맨드를 자주 사용한다.

 cat > /etc/yum.repos.d/nginx.repo << EOL

[nginx]

name=nginx repo

baseurl=http://nginx.org/packages/centos/$releasever/$basearch/

gpgcheck=0

enabled=1

EOL




도커 파일에서 아래와 같이 bash에서 사용하듯 여러 라인을 하나의 파일로 저장하려면 에러가 발생한다. 


RUN cat > /etc/yum.repos.d/nginx.repo << EOL

[nginx]

name=nginx repo

baseurl=http://nginx.org/packages/centos/$releasever/$basearch/

gpgcheck=0

enabled=1

EOL



도커 파일에서는 다음과 같이 echo와 $를 잘 사용해야 비슷한 효과를 얻을 수 있다.


RUN echo $'[nginx] \n\
name=nginx repo \n\
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ \n\
gpgcheck=0 \n\
enabled=1' >> /etc/yum.repos.d/nginx.repo


Posted by '김용환'
,


Dockerfile에서 아래와 같이 nginx 설치 커맨드를 추가했다.


RUN yum install -y nginx


그러나 에러가 발생했다.

Rpmdb checksum is invalid: dCDPT(pkg checksums): policycoreutils.x86_64 0:2.0.83-30.1.el6_8 - u



rpm 체크섬 이슈이니. 아래와 같이 rpm 체크섬을 재구축하는 커맨드를 사용하면 에러가 발생하지 않는다.


RUN rpm --rebuilddb && yum install -y nginx


Posted by '김용환'
,





인텔리J에서 Intellij에서 한 프로젝트 열고 여러 프로젝트 임포트하려면...


File > New > Module from Existing Sources…


를 이용한다.



Posted by '김용환'
,


docker export와 docker import를 먼저 살펴본다.


1. docker export :  container를 tar파일로 저장한다. 


$ docker export (컨테이너명 or 컨테이너 ID) > (컨테이너).tar

 

 

2. docker import : tar 파일을 다시 docker 이미지로 생성한다. export의 반대이다. 


$ docker import (파일 또는 URL)




docker save와 docker load를 살펴본다. 


1. docker save : docker 이미지를 tar 파일로 저장한다


$ docker save -o rabbitmq_managment.tar rabbitmq:managment



2. docker load : tar파일 이미지를 docker 이미지로 저장한다.


$ docker load -i rabbitmq_managment.tar


 





간단히 보면 그냥 간단해 보이는데. 사실은 좀 차이가 있다. 


 커맨드

결과 유형 

사용처 

소스 유형 

 export 

 

TAR 파일

컨테이너 파일 시스템 

 컨테이너

 import

 도커 이미지

 플랫 파일 시스템

 TAR 파일

 save

 TAR 파일

 도커 이미지(히스토리 포함)

 이미지

 load

 도커 이미지

 도커 이미지(히스토리포함)

 TAR 파일



플랫(flat) 파일 시스템 - 하위 디렉토리 없이 파일들을 포함하는 하나의 디렉토리를 의미한다



docker export와 import 커맨드는 플랫 파일 시스템에서 동작한다.


 docker export 커맨드는 컨테이너 상태를 구성하는 TAR 파일을 생성한다. 도커와 마찬가지로 프로세스 실행 상태는 저장되지 않는다. 즉 파일만 저장한다. docker import 커맨드는 TAR 파일에서 히스토리 또는 메타 데이터가 없는 도커 이미지를 생성한다.


docker import 및 docker export 커맨드는 대칭적이지 않다. 


즉 docker import 및 docker export 커맨드만 사용해서는 기존 컨테이너에서 컨테이너를 생성할 수 없다. 비대칭은 유용하다. docker export는 이미지를 TAR 파일로 내보내고 docker import는 모든 계층 히스토리와 메타 데이터를 “삭제”하기에 비대칭이 유용할 수 있다. 




TAR 파일로 내보내거나 저장하고 싶다면 기본적으로 stdout으로 전송되기에 다음처럼 파일로 저장한다.


$ docker save rabbitmq:management > rabbitmq_management.tar



방금 생성 한 것처럼 TAR 파일을 네트워크으로 안전하게 전송할 수 있다. 전송 전에 미리 gzip으로 압축할 수도 있다. 다른 사람들이 TAR 파일을 사용해 이미지를 그대로 가져올 수 있다. 접근 권한이 있으면 이메일이나 scp로 전송할 수 있다.


$ scp rabbitmq_management.tar ex.google.com:/tmp/

rabbitmq_management.tar



그리고 다른 사용자의 도커 데몬에 직접 이미지를 전송할 수 있다


docker save rabbitmq:management | \          


 ssh ex.google.com \                  


 docker load -     





도커 이미지의 기록을 삭제하고 싶다면 load 대신 import를 사용할 수 있다.





docker export $(docker run -d rabbitmq:management true) | \


    ssh ex.google.com docker import



Posted by '김용환'
,


도커 이미지(tar) 크기 확인하는 방법은 다음과 같다. 



1. docker history 


$ docker history rabbitmq:management

IMAGE               CREATED             CREATED BY                                      SIZE                COMMENT

df6f26ea3e53        4 months ago        /bin/sh -c #(nop)  EXPOSE 15671 15672           0B

<missing>           4 months ago        /bin/sh -c set -eux;  erl -noinput -eval '  …   29.5MB

<missing>           4 months ago        /bin/sh -c rabbitmq-plugins enable --offline…   23B

<missing>           4 months ago        /bin/sh -c #(nop)  CMD ["rabbitmq-server"]      0B

<missing>           4 months ago        /bin/sh -c #(nop)  EXPOSE 25672 4369 5671 56…   0B

<missing>           4 months ago        /bin/sh -c #(nop)  ENTRYPOINT ["docker-entry…   0B

<missing>           4 months ago        /bin/sh -c #(nop) COPY file:379f3802e5612ff1…   12.2kB

<missing>           4 months ago        /bin/sh -c #(nop)  ENV LANG=C.UTF-8 LANGUAGE…   0B

<missing>           4 months ago        /bin/sh -c #(nop)  VOLUME [/var/lib/rabbitmq]   0B

<missing>           4 months ago        /bin/sh -c #(nop)  ENV HOME=/var/lib/rabbitmq   0B

<missing>           4 months ago        |1 PGP_KEYSERVER=ha.pool.sks-keyservers.net …   21B

<missing>           4 months ago        |1 PGP_KEYSERVER=ha.pool.sks-keyservers.net …   12.6MB

<missing>           4 months ago        /bin/sh -c #(nop)  ENV PATH=/opt/rabbitmq/sb…   0B

<missing>           4 months ago        /bin/sh -c #(nop)  ENV RABBITMQ_HOME=/opt/ra…   0B

<missing>           4 months ago        /bin/sh -c #(nop)  ENV RABBITMQ_PGP_KEY_ID=0…   0B

<missing>           4 months ago        /bin/sh -c #(nop)  ENV RABBITMQ_VERSION=3.7.…   0B

<missing>           4 months ago        |1 PGP_KEYSERVER=ha.pool.sks-keyservers.net …   393kB

<missing>           4 months ago        /bin/sh -c #(nop)  ENV RABBITMQ_DATA_DIR=/va…   0B

<missing>           4 months ago        |1 PGP_KEYSERVER=ha.pool.sks-keyservers.net …   79MB

<missing>           4 months ago        /bin/sh -c #(nop)  ENV OTP_SOURCE_SHA256=122…   0B

<missing>           4 months ago        /bin/sh -c #(nop)  ENV OTP_VERSION=21.3.5       0B

<missing>           5 months ago        /bin/sh -c #(nop)  ENV OPENSSL_PGP_KEY_ID=0x…   0B

<missing>           5 months ago        /bin/sh -c #(nop)  ENV OPENSSL_SOURCE_SHA256…   0B

<missing>           5 months ago        /bin/sh -c #(nop)  ENV OPENSSL_VERSION=1.1.1b   0B

<missing>           5 months ago        /bin/sh -c #(nop)  ARG PGP_KEYSERVER=ha.pool…   0B

<missing>           5 months ago        /bin/sh -c set -eux;  apt-get update;  apt-g…   2.51MB

<missing>           5 months ago        /bin/sh -c #(nop)  CMD ["/bin/bash"]            0B

<missing>           5 months ago        /bin/sh -c mkdir -p /run/systemd && echo 'do…   7B

<missing>           5 months ago        /bin/sh -c rm -rf /var/lib/apt/lists/*          0B

<missing>           5 months ago        /bin/sh -c set -xe   && echo '#!/bin/sh' > /…   745B

<missing>           5 months ago        /bin/sh -c #(nop) ADD file:1d7cb45c4e196a6a8…   88.9MB



2.  docker save 


$ docker save rabbitmq:management | gzip | wc -c

 88612225




실제로 컨테이너(파일 디스크) 크기를 알고 싶다면 다음 커맨드를 사용한다.


1. docker inspect


$ docker image inspect rabbitmq:management --format='{{.Size}}'

212906551



2. docker ps


$  docker ps --size | grep rabbit

f1c3080202f1        rabbitmq:management   "docker-entrypoint.s…"   29 hours ago        Up 29 hours         4369/tcp, 5671/tcp, 0.0.0.0:5672->5672/tcp, 15671/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp   docker_rabbit_1      190B (virtual 213MB)



Posted by '김용환'
,


Throwing the release over the wall


특정 팀에서 릴리즈의 일부를 완료한 후 거의 의사 소통 없이 다음 팀으로 전달하는 것을 말한다.


일의 규모와 상관없이 아무 영혼 없이 내 일만 다하면 되었지 하고 의사소통 없이 넘긴다.


따라서 어떠한 의사 소통이 없기 때문에 문제가 생겨도 그대로 진행하고 끝난다. 


따라서 고객이 행복하기 보다는 그냥 요구사항의 문제가 끝나는 경우가 많다.


부정적으로 자기 일만 하는 상황을 말하는 부정적인 경우에 쓰이는 것 같다. 



Posted by '김용환'
,



Stalemate는 교착 상태를 일컫는 단어이다.


보통은 북미 대화의 교착 상태의 교착 상태를 stalemate를 일반적으로 말한다.


또는 기업 간에서도 쓰인다. 

http://www.traveltimes.co.kr/news/articleView.html?idxno=88685\

경쟁기업 간의 차별화나 경쟁우위의 요소가 미미한 경우, 이들의 경쟁은 결국 모든 기업을 실패로 몰아가기 마련이다. 어떤 기업도 다른 기업들과 뚜렷하고 지속적인 경쟁력이나 경쟁우위를 얻지 못하면 결과적으로 모든 기업들이 막다른 골목 교착상태(stalemate)에 빠진다는 것이다


또한 IT 운영에서도 사용되는 단어이다. 


교착 상태(stalemate)는 시스템 담당자는 특정 그룹이 실행한 빌드를 깨뜨리지 않도록 다른 그룹의 설정 관리 스크립트를 업데이트하는 것을 꺼려하는 것을 말한다. 따라서 업데이트 속도가 느려질수록 팀은 더욱 당황할 것이다.


'영어앤영문권' 카테고리의 다른 글

snowflask system(눈송이 시스템)  (0) 2019.08.16
개발자 영어 - HTTP의 조건부 GET(conditional get)  (0) 2018.08.31
self-contained system (SCS) 번역  (0) 2018.08.28
authz, authn  (0) 2018.08.10
BYOD  (0) 2018.07.28
Posted by '김용환'
,