docker学习记录

docker的安装(linux)

命令 sudo wget -qO- https://get.docker.com | sh

解释:-q是轻量安装 O-标准化输出 网址自动获取适应本系统的shell脚进行sh执行安装。

如果是一般用户组执行命令:sudo usermod -aG admin
这样就能把你的用户加到docker的组内不需要 在进行sudo。

运行第一个docker应用

开启dcoker :systemctl start docker

输出hello docker:docker run ubuntu echo hello docker

查看防火墙状态:firewall-cmd --state

关闭防火墙 systemctl stop firewalld.service

查看当前的ip(centos7):ip addr

改变docker 镜像

docker cp index.html 容器id(docker ps):/usr/share/nginx/html

docker commit -m 'fun' 容器id 提交名字

命令小结

命令 用途
docker pull 获取images
docker build 创建images
docker images 列出所有images
docker ps 显示正在运行container
docker run 运行一个container
docker rmi 删除images
docker rm 删除container
docker commit 保存改动为新的images
docker cp 在host于container之间拷贝文件

dockerfiler 创建自定义的镜像

FROM apline:latest
MAINTAINER zhangS
CMD echo "hello docker"

命令:docker build -t hello_docker .

实战;

FROM UBUNTU
//维护者
MAINTAINER zhangS
//更新软件包
RUN apt-get update
//下载安装 nginx
RUN apt-get install -y nginx
//复制本地文件到 安装目录
COPY index.html /var/www/html
//入口点 
ENTRYPOINT ["/usr/sbin/nginx","-g","daemon off;"]
//暴露端口
EXPOSE 80

dockerfile语法

命令 用途
FORM base image
RUN 执行命令
ADD 添加文件
COPY 复制文件
CMD 执行命令
ENTRYPOINT 入口点
EXPOSE 暴露端口
WORKDIR 制定路径
MAINTAINER 维护者
ENV 设置环境变量
USER 指定用户
VOLUME mount point

注:指定entrypoint的时候在指定cmd cmd就变成其中的参数?

-volume 挂载

docker run -d -p 80:80 -v /usr/share/nginx/html nginx
这样就把这个 nginx的欢迎界面挂载成主机的html
命令:docker exec -it 容器名字 /bin/bash 进到容器内部

本地目录挂载到容器内部

docker run -d -p 80:80 -v $PWD/html:/usr/share/nginx/html nginx

这种情况直接更改本地文件 容器内文件也会更改

创建一个数据容器挂载到另一个容器内

docker run --volumes-from...
docker create -v $PWD/data:/var/mydata --name data_container ubuntu
docker run -it --volumes-from data_container ubuntu /bin.bash
mount

实现数据共享 同一个数据卷被多个容器共享、

registry 镜像仓库

注册dockerhub 然后制作本地镜像提交

dcoker push 镜像名字

docker login 登录

docker tag 旧镜像 新镜像

安装多容器工具

docker-compose
(linux) curl -L https://github.com/docker/compose/releases/download/1.9.0/docker-compose-(uname -m) > /usr/local/bin/docker-compose

查看ls -l /usr/local/bin/docker-compose

chmod a+x /usr/local/bin/docker-compose 所有有执行的权利

docker-compose.yml常用命令

命令 用途
build 本地创建镜像
command 覆盖缺省命令
depends_on 连接容器
ports 暴露端口
volumes
images pull 镜像

docker-compose 命令

命令 用途
up 启动服务
stop 终止服务
rm 删除容器中的服务
logs 观察各个容器中的日志
ps 列出服务相关的容器

你可能感兴趣的:(docker学习记录)