dockers基础操作
获取镜像:
docker pull alpine
查看镜像:
docker images
导出镜像:
docker save -o hello.jar hello
载入镜像:
docker load<hello.jar
运行一个镜像:
docker run -i -d -t hello /bin/bash
查看现有容器:
docker ps -a
删除容器:
docker rm 98c3a3c50dc9
删除镜像
docker rmi -f 98c3a3c50dc9
删除处于终止状态的所有容器:
docker rm 'docker ps -a -q'
停止容器:
docker stop 1219be7ea817
容器导出:
docker export cocky_agnesi >hello.tar.gz
容器导入:
cat hello.tar.gz | docker import - test/hello:v0.1
挂载本地配置文件到容器:
docker run -d -v /root/shoppingcart/config/(本地目录):/app/config/(容器目录) -v /root/shoppingcart/logs/service/:/logs/ -v /etc/hosts:/etc/hosts -p 9050:9050 shoppingcart/service:0.1 --spring.config.location=/app/config/service_e3.properties
build.sh文件
docker build -t leon/docker(镜像标签) /usr/local/apache/leon/docker (dockerfile的存放位置)
Dockerfile文件
FROM anapsix/alpine-java:latest
run.sh文件
docker run -i -d -t opt/test bin/bash
docker push address 将进行提交私有库
启动
docker run -it docker.neg/ecbd/secureanalyze_consumer:1.0.9 /bin/sh
进入容器:
sudo docker ps -a
sudo docker exec -it 04966500909c /bin/sh
向私有仓库中push镜像
docker push 172.30.10.203:5000/busybox
修改tag
docker tag docker.io/anapsix/alpine-java 12.1.11.203:5000/docker.io/anapsix/alpine-java
build.sh
docker build -t docker.neg/ecbd/kafka:1.0.0 .
kafka docker镜像制作
//dockerfile
FROM docker.neg/base/alpine-java-jre:8
ADD kafka /opt/kafka/2.11-0.8.2.2
ADD start.sh /opt/kafka/2.11-0.8.2.2
VOLUME ["/opt/kafka/2.11-0.8.2.2/config"]
VOLUME ["/opt/kafka/2.11-0.8.2.2/data"]
VOLUME ["/opt/kafka/2.11-0.8.2.2/logs"]
WORKDIR /opt/kafka/2.11-0.8.2.2
CMD ["sh","start.sh"]
EXPOSE 9092
start.sh
option=
for arg in "$@"
do
key=${arg%%=*}
value=${arg#*=}
case $key in
--config)
config=$value
;;
esac
done
if [ ! -n $config ];then
echo "config url must not null"
exit 2
fi
echo "url=$config"
wget -O server.properties $config
if [ ! -f server.properties ];then
echo "not find config server.properties"
exit 2
fi
mv server.properties /opt/kafka/2.11-0.8.2.2/config
exec bin/kafka-server-start.sh config/server.properties
//远程server.properties内容
//./start.sh --config=http://1.1.1.1/bigdata/EC2Config/raw/master/Kafka/server_85.properties
elasticsearch docker镜像制作
//build.sh
docker build -t docker.neg/ecbd/elasticsearch :1.0.0 .
//docker file
FROM docker.neg/base/alpine-java-jre:8
MAINTAINER truman
ADD elasticsearch-2.3.2 /elasticsearch
VOLUME ["/elasticsearch/config"]
VOLUME ["/elasticsearch/data"]
VOLUME ["/elasticsearch/logs"]
EXPOSE 9200
EXPOSE 9300
WORKDIR /elasticsearch
CMD ["/elasticsearch/bin/elasticsearch"]
start.sh
option=
for arg in "$@"
do
key=${arg%%=*}
value=${arg#*=}
case $key in
--config)
config=$value
;;
esac
done
if [ ! -n $config ];then
echo "config url must not null"
exit 2
fi
echo "url=$config"
wget -O server.properties $config
if [ ! -f server.properties ];then
echo "not find config server.properties"
exit 2
fi
mv server.properties /opt/kafka/2.11-0.8.2.2/config
exec bin/kafka-server-start.sh config/server.properties
//start.sh
bash esManage.sh create http://1.1.1.1/bigdata/EC2Config/raw/master/Elasticsearch/gqc_cluster.json