Docker
Docker
https://blog.csdn.net/Cypher_X/article/details/115359957?msclkid=86361520b1a111ecb282c7f297fb4ff9
安装
CentOS
#清除旧版本
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
#安装依赖
yum install -y yum-utils
#安装镜像仓库
yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#安装docker相关的一些东西
yum install docker-ce docker-ce-cli containerd.io
#启动docker
systemctl start docker
#测试是否安装成功
docker run hello-world
阿里云镜像加速
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://y8gcn7hr.mirror.aliyuncs.com"]
}
EOF
systemctl daemon-reload
systemctl restart docker
命令
docker images
[root@iZbp1adqwvvecsdyl07dzqZ ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ctfhub/base_web_nginx_php_56 latest 41691474a732 19 hours ago 56MB
docker rmi 删除镜像
docker rmi -f 镜像id
docker rmi -f $(docker image-aq) #删除所有
退出
exit #停止容器并退出
Ctrl + P + Q #不停止容器退出
docker rm 删除容器
docker rm 容器id
docker rm -f $(docker ps-aq) #删除所有
查看日志
docker logs -tf --tail num 容器id
查看进程
docker top 容器id
查看元数据(详细信息)
docker inspect 容器id
进入容器
docker exec #进入当前命令行
docker attach 容器id #打开一个新的命令行
cp
docker 容器id:路径 主机路径
提交为一个镜像
docker commit -m="提交的描述信息" -a="作者”容器id目标镜像名:[TAG]
数据卷挂载(同步主机和容器的数据)
-v
docker run -it -v 主机目录:容器内目录
DockerFile
FROM xxx #基础的镜像
MAINTAINER #作者和邮箱
RUN #要执行的命令
WORKDIR #镜像的工作目录
EXPOST #开放的端口
CMD #镜像启动时要运行的命令
ENV #环境变量
eg.
FROM centos
MAINTAINER _ghost<969095266@qq.com>
ENV MYPATH /usr / loca1
WORKDIR $MYPATH
RUN yum -y install git
EXPOSE 80
CMD echo $MYPATH
CMD echo "----end---_"CMD /bin/bash
创建
docker build -f mydockerfile-centos -t centos1 . #最后有个.要注意
DockerCompose
安装
curl -L https://get.daocloud.io/docker/compose/releases/download/1.24.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
授权
chmod +x docker-compose