docker安装及使用记录

docker安装及使用记录

docker安装

TODO

docker使用

查询docker镜像: docker search python
拉取docker镜像:docker pull docker.io/centos/python-36-centos7
编写Dockerfile

# 从远程拉取镜像库
FROM docker.io/centos/python-36-centos7
# 定义工作路径
WORKDIR /app/vearch/

# 复制文件到指定目录, 不能直接i复制整个项目,会把文件夹里里面的东西直接复制到指定文件下
COPY ./README.md /app/vearch/
COPY ./bin/ /app/vearch/bin/
COPY ./model/ /app/vearch/model/
COPY ./src/ /app/vearch/src/
# 设置root用户  要不然yum会报错
USER root
# 镜像少了个so包,需要自己安装
WORKDIR /lib64/
COPY ./lib/libXrender.so.1.3.0 /lib64/
RUN ln -s libXrender.so.1.3.0 libXrender.so.1
#RUN yum install libXrender
#EXPOSE 4101
WORKDIR /app/vearch/src
RUN pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
WORKDIR /app/vearch/
# 定义启动命令
CMD ["./bin/run.sh", "image"]
#ENTRYPOINT ["./bin/run.sh"]
#CMD ["image"]

编译Dockerfile docker build -t image-name.
启动容器 docker run -itd --user root -p 4101:5200 image-name /bin/bash
-d: 后台运行容器,并返回容器ID;
-i: 以交互模式运行容器,通常与 -t 同时使用;
-P: 随机端口映射,容器内部端口随机映射到主机的高端口
-p: 指定端口映射,格式为:主机(宿主)端口:容器端口
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;

查看运行的容器 docker ps
查看所有的容器 docker ps -a
查看所有的镜像 docker images

启动指定容器 docker start CONTAINER ID
进入指定容器 docker attach CONTAINER ID

删除指定镜像以及其容器
docker ps -a|grep image-name |awk ‘BEGIN{a=""} {a=a" "$1;}END{print a}’ |xargs docker rm && docker rmi image-name

你可能感兴趣的:(docker)