Docker基础速成(一)

给亲爱的写的docker基础速成,按照步骤操作,实践出真知,希望有提纲挈领之功效

1.docker简介

Docker 轻量级容器,如图,类似于一个个集装箱,把复杂或者零散的东西装在一个个箱子里,可以把各种东西放里面分门别类,统一管理,如果需要搬的时候直接搬箱子就好,而且有很多别人的箱子装的正是你需要装的服务,可以直接拿来变成你自己的箱子。

看完简介你已经知道docker是个什么东西了,可以说:“我知道docker是个啥了”,下面进入基础操作环节

2.docker基础命令操作

(1)docker search  查找镜像命令

先找个要装的镜像,看看别人装好的集装箱,比如mysql,5.6版本要注意的事情少一些,先找mysql5.6试试看

docker search mysql5.

(2)docker pull  安装镜像命令

找到了很多,安装一个看着喜欢的drunkar/mysql5.6-utf8

docker pull drunkar/mysql5.-utf8

(3)docker images  列出本地镜像命令

下载完成后查看本地镜像,红色箭头指向刚刚安装的镜像

docker images

(4)docker run 创建一个新的容器并运行

用这个镜像创建容器

--name mysql5.6        指定容器名称为mysql5.6

-p 12006:3306           主机的12006端口映射到容器3306端口,当端口映射的不同时候,注意顺序,前面是主机的后面是容器的

-e MYSQL_ROOT_PASSWORD=Mysql5.6    mysql的root密码为Mysql5.6

-v /data/docker/mysql_data:/var/lib/mysql      将容器mysql存放的数据挂载到本机的/data/docker/mysql_data

mkdir -p /data/docker/mysql_data
docker run -it --name mysql5. -p :33 -e MYSQL_ROOT_PASSWORD=Mysql5.6 -v /data/docker/mysql_data:/var/lib/mysql -d drunkar/mysql5.6-utf8

如果主机端口被占用会有Error starting userland proxy: listen tcp 0.0.0.0:3306: bind: address already in use.这个错误提示

(5)docker ps  列出容器

docker ps 列出正在运行的容器

docker ps -a    列出所有的容器

(6)docker exec -it mysql5.6 mysql   进入容器中的mysql

docker exec -it mysql5.6 mysql
#查看mysql中mysql库的user表
select User,Host,Password from mysql.user;
#里面root本地免密登录,修改admin用户密码
 update mysql.user set Password=password("mysql5.6") where User="admin";
#刷新 flush privileges; 
#退出 quit
#插入忘记mysql的root密码修改
#首先进入容器中docker exec -it mysql5.6 /bin/bash
#修改配置文件vi /etc/mysql/my.cnf
#在[mysqld]下添加一行跳过授权表 skip-grant-tables
#保存退出,重启docker restart mysql5.6
#docker exec -it mysql5.6 mysql
#查看mysql中mysql库的user表 select User,Host,Password from mysql.user;
#发现里面有root用户和admin用户,把密码都修改下
#更改密码
update mysql.user set Password=password("Mysql5.6") where Host="127.0.0.1" or Host="localhost";(此版本修改这个有个小问题,这个版本可以不修改)
update mysql.user set Password=password("mysql5.6") where User="admin"; 
#刷新 flush privileges;
#退出 quit
#删除之前在my.cnf中添加的
skip-grant-tables
防火墙开启端口后,通过外网访问:   mysql -h xxx.xx.xxx.xx -P 12006 -u admin -p  

(7)docker start/stop/restart  启动关闭重启容器

看完基础命令你已经知道docker怎么使用了,可以说:“我会使用docker了”,下面进入好看的环节
#下载WordPress镜像,一个博客平台
docker pull wordpress:latest
#连接数据库创建容器
docker run -it --name wordpress --link mysql5.:mysql -e WORDPRESS_DB_USER=admin -e WORDPRESS_DB_PASSWORD=mysql5. -p : -d wordpress

--link  建立容器间的连接,连接各个创建的mysql5.6

-e WORDPRESS_DB_USER=admin    刚刚数据库里面的授权帐号

-e WORDPRESS_DB_PASSWORD=mysql5.6   数据库里面授权帐号的密码

访问http://140.143.xxx.xx:12005 进入界面(因为指定了12005的端口,不能访问可以docker logs wordpress查看日志,没问题的话记得关闭selinux,开启防火墙端口和安全组端口 )

安装完成后:

  http://140.143.xxx.xx:12005/wp-login.php  登录后台地址

  http://140.143.xxx.xx:12005  界面如下


基础教程待续... ...

Docker基础速成(一)的更多相关文章

  1. Docker - Docker基础命令及使用

    Docker Docker - 官网 Docker - Hub GitHub - Docker Docker中文社区 Docker基础命令 Docker 查看帮助信息:docker --help 查看 ...

  2. 【云计算】Docker云平台—Docker基础

    Docker云平台系列共三讲,此为第一讲:Docker基础 参考资料: Docker官方文档:https://docs.docker.com/ Docker从入门到实践:https://yeasy.g ...

  3. Docker基础技术:Linux Namespace(下)

    在 Docker基础技术:Linux Namespace(上篇)中我们了解了,UTD.IPC.PID.Mount 四个namespace,我们模仿Docker做了一个相当相当山寨的镜像.在这一篇中,主 ...

  4. Docker 基础技术:Linux Namespace(下)

    导读 在Docker基础技术:Linux Namespace(上篇)中我们了解了,UTD.IPC.PID.Mount 四个namespace,我们模仿Docker做了一个相当相当山寨的镜像.在这一篇中 ...

  5. Docker基础入门及示例

    Docker近几年的发展可谓一日千里,特别从是2013年随着一个基于LXC的高级容器引擎开源,到现在,其在linux和windows上都有了很好的支持,并且已经有很多公司将docker用于实际的生产环 ...

  6. Docker 基础 : 镜像

    目录 获取镜像 查看镜像信息 搜索镜像 删除镜像 创建镜像 导出和导入镜像 上传镜像 总结 镜像是 Docker 的三大核心概念之一.Docker 运行容器前需要本地存在对应的镜像,如果本地没有对应的 ...

  7. Docker 基础技术之 Linux cgroups 详解

    PS:欢迎大家关注我的公众号:aCloudDeveloper,专注技术分享,努力打造干货分享平台,二维码在文末可以扫,谢谢大家. 推荐大家到公众号阅读,那里阅读体验更好,也沉淀了很多篇干货. 前面两篇 ...

  8. docker 基础知识分享ppt

    给团队做的docker基础分享ppt, 见下面的附件. https://files.cnblogs.com/files/harrychinese/docker_intro.pptx

  9. 中标麒麟龙芯平台--docker基础镜像制作

    Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源.Docker 的出现为开发人员和运维人员带来了极大的便利.Docker在X86下常见的发行版Linux如Ub ...

随机推荐

  1. 【刷题】UOJ #207 共价大爷游长沙

    火车司机出秦川,跳蚤国王下江南,共价大爷游长沙.每个周末,勤劳的共价大爷都会开车游历长沙市. 长沙市的交通线路可以抽象成为一个 \(n\) 个点 \(n−1\) 条边的无向图,点编号为 \(1\) 到 ...

  2. HEOI2015小L的白日梦

    题面链接 洛咕 sol 为什么网上面只有神仙题解啊!!! 引起我这种蒟蒻不适QAQ. 性质证明留给巨佬 然后我只贴性质了QwQ. 1.一定存在最优解每一天不高兴的概率是单调不增的. 2.一定存在最优解 ...

  3. 【NOI 2018】归程(Kruskal重构树)

    题面在这里就不放了. 同步赛在做这个题的时候,心里有点纠结,很容易想到离线的做法,将边和询问一起按水位线排序,模拟水位下降,维护当前的各个联通块中距离$1$最近的距离,每次遇到询问时输出所在联通块的信 ...

  4. BZOJ3550 [ONTAK2010]Vacation 【单纯形】

    题目链接 BZOJ3550 题解 单纯形裸题 题意不清,每个位置最多选一次 #include<algorithm> #include<iostream> #include< ...

  5. wazhu之agent功能详解

      一.日志数据收集 日志数据收集是从服务器或设备生成的记录中收集的实时过程.此组件可以通过文本文件或Windows事件日志接收日志.它还可以通过远程syslog直接接收日志,这对防火墙和其他此类设备 ...

  6. Linux kernel(CVE-2018-17182)提权漏洞复现

    0x01 漏洞前言 Google Project Zero的网络安全研究人员发布了详细信息,并针对自内核版本3.16到4.18.8以来Linux内核中存在的高严重性漏洞的概念验证(PoC)漏洞利用.由 ...

  7. linux内核分析 第八周读书笔记

    第四章 进程调度 4.1 多任务 1.多任务操作系统就是能同时并发的交互执行多个进程的操作系统. 2.多任务操作系统使多个进程处于堵塞或者睡眠状态,实际不被投入执行,这些任务尽管位于内存,但是并不处于 ...

  8. 解题:BZOJ 3884 上帝与集合的正确用法

    题面 好久以前写的,发现自己居然一直没有写题解=.= 扩展欧拉定理:在$b>φ(p)$时有$a^b \equiv a^{b\%φ(p)+φ(p)}(mod$ $p)$ 然后每次递归那个$a^{b ...

  9. bzoj 3667 Rabin-Miller算法

    #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> #i ...

  10. django中的request对象详解

    Request 我们知道当URLconf文件匹配到用户输入的路径后,会调用对应的view函数,并将  HttpRequest对象  作为第一个参数传入该函数. 我们来看一看这个HttpRequest对 ...