자동으로 ethereum classic explorer실행되게 하기

YU YU·2021년 11월 25일
0

docker image 빌드하기

ethereum classic 폴더에서 Dockerfile을 다음과 같이 작성한다.

FROM node:14.17.0

COPY . /
RUN apt-get -y update
RUN apt-get install -y git
RUN git clone https://github.com/vishnubob/wait-for-it.git
RUN cp wait-for-it/wait-for-it.sh /wait-for-it.sh
RUN npm i
RUN chmod +x /wait-for-it.sh


EXPOSE 3000

apt-get update를 통해 git을 받을 수 있는 작업을 하고,
git을 다운받아서 wait-for-it을 클론한다.
그 다음에 클론한 wait-for-it 디렉토리의 wait-for-it.sh를 루트 디렉토리로 복사한다.
그리고 chmod +x를 통해 모든 사용자에게 사용 권한을 열어주는 것이다. 리눅스에서 권한이 rwx 3가지임을 생각해보면 모두에게 x즉, 실행권한을 열어주는 것이다.

이렇게 바꾸고 다음의 명령어를 통해 빌드한다.
$ docker build -t [이미지이름]
나는 $ docker build -t newetc6으로 해주었다.

2. docker-compose.yaml


아래와 같이 entry 즉, explorer이미지를 바꾸고,
command를 다음과 같이 써준다.
command : bash -c "/wait-for-it.sh -h mongo -p 27017 -t 10 -- npm run start"

-h 는 host 이름을 써주는 것이고, -p는 연결할 포트를 입력해주는 것이다. 그리고 -t는 연결된 후 몇초를 기다리는지 적는 것이고, --은 그 다음에 실행할 command를 입력하면 된다.

그러면 화면이 뜨는데

다음과 같이 27017 포트가 연결되었고, 10초를 기다리겠다고 뜬다.
그 사이에 db가 실행가능하게 된다.

그리고 나면 타임 아웃이 일어나서 npm start를 실행하게 된다.

아주 연결이 잘 된다.

profile
코딩 재밌어요!

0개의 댓글