Docker 镜像仓库
常用命令 官方文档 菜鸟教程
docker run -it -d --name <container_name> -p 8898:80 -p 8899:3306 -v /home/:/home/suzhu/ <repository:tag centos:latest>
运行容器 -v映射容器目录到本地目录,-p并指定本地端口映射到容器端口
docker run -it --name <容器名称> <镜像仓库:标记 python:3.6> /bin/bash
以守护形式运行容器并进入命令窗口
docker build -t <镜像仓库:标记 python:3.6> .
从Dockerfile构建镜像
docker exec -it <容器ID> /bin/bash 进入容器
docker attach <容器ID>
进入容器 /将本地标准输入、输出和错误流附加到正在运行的容器
ctrl + p + q
退出但不关闭容器/让容器在后台运行
docker cp <宿主机文件/文件夹> <容器ID:文件/文件夹>
在容器和本地文件系统之间复制文件/文件夹
docker commit -p <容器ID> <新镜像名称>
根据现有的容器构建镜像
docker save -o </..路径../自定义.tar> <一个或多个镜像名称>
将一个或多个图像保存到tar存档
docker images
列出本地所有镜像
docker ps
列出正在运行的容器docker ps -a
列出所有容器
docker stop <一个或多个容器ID>
kill/停止一个或多个正在运行的容器
docker start <一个或多个容器ID>
启动一个或多个停止的容器
docker restart <一个或多个容器ID>
重新启动一个或多个容器
docker rm <一个或多个容器ID>
删除一个或多个容器
docker rmi <镜像仓库:标记 python:3.6>
删除一个或多个镜像
docker rename <CONTAINER ID> NEW_NAME
重命名容器
docker load -i ./container-backup.tar
从tar存档加载镜像
docker search -s 10 java
查找所有镜像名包含java,并且收藏数大于10的镜像
docker exec -it <容器ID> /bin/bash -c 'source ~/.bashrc;python demo.py'
宿主机执行容器内部脚本
docker logs -ft --tail='all' <容器ID>
查看容器日志
Dockerfile 官方文档 CSDN详解
# This my first nginx Dockerfile
# Version 1.0
# Base images 基础镜像
FROM centos
#MAINTAINER 维护者信息
MAINTAINER tianfeiyu
#ENV 设置环境变量
ENV PATH /usr/local/nginx/sbin:$PATH
#ADD 文件放在当前目录下,拷过去会自动解压
ADD nginx-1.8.0.tar.gz /usr/local/
ADD epel-release-latest-7.noarch.rpm /usr/local/
#RUN 执行以下命令
RUN rpm -ivh /usr/local/epel-release-latest-7.noarch.rpm
RUN yum install -y wget lftp gcc gcc-c++ make openssl-devel pcre-devel pcre && yum clean all
RUN useradd -s /sbin/nologin -M www
#WORKDIR 相当于cd
WORKDIR /usr/local/nginx-1.8.0
RUN ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_ssl_module --with-pcre && make && make install
RUN echo "daemon off;" >> /etc/nginx.conf
#EXPOSE 映射端口
EXPOSE 80
#CMD 运行以下命令
CMD ["nginx"]
Docker 离线安装
下载安装包及其依赖
修改
/var/yum.conf
keepcache=0 <----改成1就能保存安装包了
yum install --downloadonly --downloaddir=/home/docker docker
已经安装的程序只会下载更新包,需要在纯净的环境下下载
安装
rpm -ivh *.rpm --nodeps --force
配置
DOCKER_HOST
sudo vim /etc/profile.d/docker.sh
export DOCKER_HOST=tcp://localhost:2375
应用
source /etc/profile
source /etc/bashrc
配置启动文件
sudo vim /lib/systemd/system/docker.service
将
ExecStart=/usr/bin/dockerd
修改为(--graph /home/docker为docker数据存储位置)
ExecStart=/usr/bin/dockerd --graph /home/docker -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock -H tcp://0.0.0.0:7654
重载配置和重启
sudo systemctl daemon-reload
sudo systemctl restart docker.service
docker version
个人微信,有什么建议、意见或补充,欢迎及时沟通!!!(添加时注明“博客园”,谢谢)