系统运输
使用CentOS进行在线安装:
yum? 安装? 电子版-发行版? 要安装epel源代码,必须打开CentOS的yum源代码
yum? 安装? 医生? -y? 同时安装docker-cli客户端
setenforce? 将0##Selinux设置为disable并重新启动
系统CTL? 开始? 文档生成器
?
官方CE版安装:
yum install-yyum-utils device-mapper-persistent-datalvm 2
yum-config-manageradd-repo https://download.docker.com/Linux/centos/docker-ce.repo? #获取官方repo源
(安装AlibabaCloud (阿里巴巴云)源: wget https://mirrors.a liyun.com/docker-ce/Linux/centos/docker-ce.repo-)
yumlist docker-ceshow duplicates|sort-r? #查看版本
yuminstalldocker-ce-version _ string docker-ce-CLI-version _ string containerd.io
docker测试版本# #是否已成功安装
?
(版本升级删除旧版本: yum? 移除? 医生? docker-common? docker-selinux? 文档引擎)
?
文档加速配置:
前提:不能同时使用方法,配置完成后必须重新启动守护进程
?
方式1 :
mkdir /etc/docker
cat /etc/docker/daemon.json EOF
{
? registry-mirrors:[ https:/jzngeu 7d.mirror.aliyuncs.com ]
}
EOF
方式2 :
vim? /etc/sysconfig/docker
options=\\\&; quot; selinux-enabledlog-driver=journald-signature-verification=falseregistry-mirror=330
if [ -z ${DOCKER_CERT_PATH} ]; then
? DOCKER_CERT_PATH=/etc/docker
fi
?
查看镜像:文档? images==docker? image? 洛杉矶地铁
医生? image? 大楼###
医生? image? history ##
医生? image? inspect? #显示镜像属性信息
医生? image? pull/push? nginx:1.11 ##拉动并推送指定版本的镜像
医生? image? rm? nginx==? 医生? rmi? nginx
医生? image? save、tag、load、import和##image是可选的
?
查看信息: docker? 信息? 使用文档生成器? help显示可用命令
重新标记镜像: docker? tag? 621d57f27e93? test:1.0
下载镜像: docker? 保罗? hub.c.163.com/library/MySQL:latest? #AlibabaCloud (阿里巴巴云)提供镜像加速器。 cr.console.aliyun.com
上传: docker? 推?
保存镜像:文档? 夏娃? Mysql:5.6.34? /opt/MYSQL-5.6.34.tar.gz
镜像加载:文档? 里德? /opt/mysql-5.6.34.tar.gz
导出镜像: docker? image? 导出? 容器id? xxx.tar (将容器文件系统导出到tar归档文件) ) ) ) ) )。
导出镜像: docker? image? 输入? xxx.tar? test:latest (导入容器文件系统tar归档文件以创建镜像() ) ) ) ) ) )。
浏览集装箱: docker? ps ##-a看了一切,-aq看了ID,要杀了集装箱docker吗? rm? -f? ID
?
运行容器:(每个容器都需要指定所需的参数) ) )。
医生? 兰花? restart=always? name=db? -dit? -p? 3306:3306?
-e? MYSQL_ROOT_PASSWORD=redhat? -e? MYSQL_DATABASE=数据库名称? hub.c.163.com/library/mysql
医生? 兰花? -p? 3306:3306? mysql:5.6.34 ##指定容器中的镜像版本启动,否则下载到镜像服务器
?
医生? 容器? run:( )其中容器是可选的) )。
-p :进行端口映射
-d :后台运行
-v? 主机目录:容器目录? —宿主机上的目录映射到容器,可用于存储数据库数据
-it :交互式分配tty
-e :添加变量,然后单击“-e? y=abc”
?
name :命名容器
IP? 字符串:设置容器ip。 只能在自定义网络上使用
restart=always :在容器结束时重新启动。 默认值为否
add-host? list :向容器添加主机/etc/hosts
DNS? list:DNS服务器设置
-挂载? 装载将主机分区装载到容器中
memory :容器可以使用最大内存量。 -m
memory-swap :允许使用交换内存
memory-swappiness=0- 100 :容器使用swap分区的百分比。 默认值为-1
-oom-kill-disable :如果宿主机内存不足,内核会杀死容器中的进程。 建议在使用此参数之前使用-m参数
CPUs :限制容器CPU资源的使用
cpuset-cpus :限制容器使用特定的CPU
?
医生? 开始? container_id1,container_id2……
医生? stop? ……
医生? 重新开始? ……
医生? 顶级? container_id? #显示指定容器中的进程
医生? 斯塔茨? container_id :显示资源利用率
医生? port? container_id :查看端口映射
医生? 更新? 选项? container_id :在线调整内存、cpu限制(-c、-m ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )。
?
医生? inspect? 容器id ##显示所有属性
医生? cp? 主机目录? 容器名称: /目录? #实现文件复制,反之也可进行复制
医生? exec? 容器id? ip? A? #查看分配的IP
医生? exec? -it? 容器id? bash? ##-it分配终端,然后执行bash命令,随后输入的命令输入容器并输出
医生? 容器? attach? 容器id ##进入容器系统并退出使用“Ctrl p q”
?
医生? commit? 容器名称? 镜像名称: tag? #保存更改的数据,重新生成新的镜像,实现数据的永久化(即使重新启动或删除数据也不会丢失)?
医生? logs? 容器id? #查看日志,容器id在“docker ps”中查看
?
医生? rm? -fv? 容器id? #删除容器,也可以是tag、短ID
医生? rm? $(dockerPS-QA )? #批量删除集装箱
docker rmi -f? 资料档案库: tag (或镜像id ) ##删除镜像
?
将Docker主机数据装载到容器:
? volumes:Docker管理宿主机上的文件系统的一部分(/var/lib/docker/volumes )
? 印度? mounts :可以存储在主机系统上的任意位置
? tmpfs不写入宿主机的文件系统,而是装载到宿主机系统的内存中
Docker网络管理:
支持的网络型号: docker? 网络? 洛杉矶地铁
? 桥接器:默认网络。 当Docker启动时,默认情况下会创建docker0桥,并将默认创建的容器添加到此桥中
? host :与宿主机共享一个,而不是获取网络名称空间
? none :获取独立的网络名称路径,但不配置网络
? container :是否要使用与指定容器相同的网络? namespave,由net=container:name _ or _ id指定
? 自定义:自定义网桥,默认与bridge网络相同
docker专用仓库建设:
文档中心:文档中心官方维护的公共仓库。 https://hub.docker.com包含15000多个镜像。)
DockerPool国内专业的docker技术社区( http://www.dockerpool.com,也提供官方镜像下载) )。
?
构建步骤:
? 先拉出注册镜像(用于启动仓库)和上传busybox镜像)
文档拉入注册表
docker pull busybox
? 使用docker tag命令将此镜像标记为x.x.x.x:5000/busybox
docker tag docker.io/busybox? x.x.x.x:5000/busybox
医生? images? #显示镜像
? 修改文档配置文件以添加参数insecure-registry=x.x.x.x:5000
(注意:此处的参数指定非安全模式,即http而不是https,然后重新启动docker服务。)
? 创建并启动注册容器
docker run-d-p 5000:5000privileged=true-v/my registry:/var/lib/registry registry
(注意:/tmp/registry是registry版本1的仓库目录,此处使用版本v2。)
? 在客户端上输入以下命令,将推送镜像到仓库
docker push x.x.x.x:5000/busybox
? 查看在本地目录/myregistry和客户端上推送的刚才推送的镜像
特里? /myregistry/docker/
也可以在“curl http://192.168.200.103:5000/v2/_ catalog”中查看
?
Harbor :企业级专用镜像仓库
Harbor是VMware开源企业级文档注册表项目,地址: https://github.com/vmware/harbor
?
?
在docker中构建LNMP平台:
步骤:
(1)创建自定义网络
医生? 网络? create? lnmp
?
)2)创建MySQL数据库容器
医生? 兰花? -itd? name? lnmp_mysql? 网络? lnmp? -p? 3306:3306? -挂载? src=mysql_vol,dst=/var/lib/mysql? -e? MYSQL_ROOT_PASSWORD=123456? mysql? character-set-server=utf 8
?
(三)建立必要的数据库
医生? exec? lnmp_mysql? sh? -c? \\\&; #039; exec? mysql? -路线? -p$MYSQL_ROOT_PASSWORD? -ecreate? 数据库? wp\\\&; quot;
?
)4)创建PHP环境容器
mkdir? -p? /app/wwwroot
医生? 兰花? -itd? name? lnmp_web? 网络? lnmp? -p? 808:80? -挂载? type=bind,src=/app/wwwroot,dst=/var/www/html? richarvey/nginx-php-fpm
?
)5)以wordpress博客为例进行测试
wget? 3359 cn.WordPress.org/WordPress-4.7.4-zh _ cn.tar.gz
tar? zvf? wordpress-4.7.4-zh_CN.tar.gz? -C? /app/wwwroot
浏览器访问: http://ip:808/wordpress
?
详情请访问云服务器、域名注册、虚拟主机的问题,请访问西部数码代理商官方网站: www.chenqinet.cn