eagle 发表于 2020-4-16 12:26:39

docker 基本操作手册

Docker 介绍


Docker是通过内核虚拟化技术(namespaces及cgroups等)来提供容器的资源隔离与安全保障等。由于docker 通过操作系统层的虚拟化实现隔离,所以docker 容器在运行时不需要类似虚拟机额外操作系统开销,提高资源利用率


一.Docker 安装及基本操作环境基于: CentOS 7 1. 安装docker的yum源tee /etc/yum.repos.d/docker.repo <<-'EOF'name=Docker Repositorybaseurl=https://yum.dockerproject.org/repo/main/centos/7/enabled=1gpgcheck=1gpgkey=https://yum.dockerproject.org/gpgEOF2.执行安装#yum -y install docker-engine3.设置开机启动# systemctlstart docker&& systemctl enable docker4.添加Docker Hub国内镜像# 如果没有此文件,则新建一个vi /etc/docker/daemon.json {    "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]}systemctlrestart docker             #重启docker 5.搜索镜像#docker search centos6.从Docker hub下载镜像到本地#docker pull centos 7.列出所有本地镜像#docker images8.删除本地镜像#docker rmi centos9.镜像导入导出# dockersave centos >/opt/centos.tar.gz#导出镜像# dockerload-i /opt/centos.tar.gz #导入镜像 二.容器管理1.启动一个新容器# docker run --namemycentos-t-icentos/bin/bash--name#起一个名字-t      #分配一个终端-i      #标准输入输出



2.退出容器




3.再次启动容器# dockerps -a# dockerstarta36e3f8cf5fe

5. util-linux 管理容器进程 #yum install util-linux -y
#!/bin/bashPid=$(dockerinspect --format "{{.State.Pid}}" $1)nsenter-t $Pid-u -i -n -p#通过容器的 id查询PID 进行容器管理 #docker stop$(docker ps -a -q)   #关闭正在运行的容器








三.Docker 网络访问
1. 自定义端口启动容器# docker run-d-p81:80nginx
















四.Docker 数据存储
1.挂载一个数据卷# dockerrun -it--name volue-test-v/datacentos 查看数据在物理机的存储位置#docker inspect    4baccbb8dd6e
2.挂载指定目录# dockerrun -it--name volue-test1   -v/opt:/opt:rwcentos

3.挂载文件到容器# dockerrun -it-v ~/.bash_history:/.bash_history   centos
4.数据卷容器
容器挂载一个目录# dockerrun-d   --name nfs-v/datacentos# docker run -it--nametest2--volumes-from nfscentos
五.docker-手动构建镜像1.启动一个容器,在容器里安装上nginx # docker run --name mynginx-itcentos

2. 提交修改过的容器# docker commit-m "my nginx" aed6c9b92d1d   nginx/mynginx:v1查看镜像:
3. 修改nginx设置nginx 前台运行# docker run-it --name nginxv1nginx/mynginx:v1# vi /etc/nginx/nginx.confdaemon off;      #最上方加一条4. 退出容器提交容器版本# docker ps -a# docker commit-m "my nginx" d5457d4454d2    nginx/mynginx:v2
5. 启动修改过的镜像# docker run -d -p 81:80nginx/mynginx:v2nginx






六.Dockerfile 构建


1.Dockerfile 书写# mkdir/opt/nginx# vi /opt/nginx/Dockerfile#This docker file#VERSION#Author: Jason demo#Base imageFROMcentos#MintainerMAINTAINERdemodemo@163.com#CommandsRUN yum install epel-release -yRUN yum install-y nginxADD index.html /usr/share/nginx/html/index.htmlRUN echo "daemon off;">>/etc/nginx/nginx.confEXPOSE80CMD ["nginx"]# echo "HelloWord nginx!" > /opt/nginx/index.html 2.构建镜像# dockerbuild-t nginx/mynginx:v3/opt/nginx/
构建成功返回

# docker images
3.启动镜像# dockerrun -d -p 82:80nginx/mynginx:v3

gbb 发表于 2020-4-30 10:50:04

非常全面
页: [1]
查看完整版本: docker 基本操作手册