-
准备Dockerfile
FROM python:3.6.9-slim-buster
ADD . /root/darknode/tor/tor_nodes
RUN cd /root/darknode/tor && mkdir consensus_tar consensus descriptors_tar descriptors
WORKDIR /root/darknode/tor/tor_nodes
RUN /usr/local/bin/python -m pip install -r requirement.txt \
-i https://pypi.tuna.tsinghua.edu.cn/simple \
--trusted-host pypi.tuna.tsinghua.edu.cn
-
编写shell脚本
#!/bin/bash
function startDocker() {
echo "clear history images and container!"
docker images -a | grep node | awk '{ print $3 }' | xargs docker rmi -f
docker ps -a |grep $container_name | awk '{ print $1 }' | xargs docker stop
docker ps -a |grep $container_name | awk '{ print $1 }' | xargs docker rmi -f
docker images -a | grep $container_name | awk '{ print $3 }' | xargs docker rmi -f
echo
echo "start build $image_name"
docker build -t $image_name .
echo
echo "start tag remote name"
remote_image="$harbor_host_port/$harbor_repository/$image_name"
docker tag $image_name $remote_image
echo
echo "start login harbor"
docker login -u $harbor_username -p $harbor_password $harbor_host_port
echo "start push $remote_image"
docker push $remote_image
echo "test container run command: 'docker run -itd -h $container_name --restart=always --name=$container_name $image_name /bin/bash'"
echo "test pull remote_image command: 'docker pull remote_image'"
}
function main() {
echo
startDocker
}
harbor_host_port="172.16.0.120:30002"
harbor_username="admin"
harbor_password="Harbor12345"
harbor_repository="darknet-target"
image_name="tor_nodes:latest"
container_name="tor_nodes"
main
-
奔跑吧兄弟!
bash start.sh