- 时间:2020-09-28 10:50 编辑: 来源: 阅读:
- 扫一扫,手机访问
摘要:Mac系统上用Docker搭建lamp环境
<span style="color: #ff0000">[b]前言[/b]</span>
docker终于出来mac版本了,赶紧去下载,[url=https://docs.docker.com/docker-for-mac/]安装步骤[/url],以前没有Mac版本的时候还要装docker toolbox,现在直接下载安装就好了。
状态栏
[img]http://img.1sucai.cn/uploads/article/2018010710/20180107100151_0_50759.png?20161112101854[/img]
安装好了的样子
[img]http://img.1sucai.cn/uploads/article/2018010710/20180107100153_1_77168.png?20161112101827[/img]
docker的提示
这个时候就可以到终端里面输入docker命令
<div class="sucaicode">
<pre class="brush:bash;">
$ docker --version
Docker version 1.13.0-rc3, build 4d92237
$ docker-compose --version
docker-compose version 1.9.0, build 2585387
$ docker-machine --version
docker-machine version 0.9.0-rc2, build 7b19591</pre>
</div>
如果在终端里面输入docker提示的是command not found请将docker加入到环境变量
<div class="sucaicode">
<pre class="brush:bash;">
vim /etc/profile
最后插入 export PATH=${PATH}:/usr/local/bin ## docker命令安装到了这个目录</pre>
</div>
<span style="color: #ff0000">[b]hello world[/b]</span>
docker run hello-world
主要用来测试docker是否安装好,能否正常使用
[img]http://img.1sucai.cn/uploads/article/2018010710/20180107100153_2_94607.png?20161112102017[/img]
hello world
[code]docker images [/code]查看已经下载的镜像
[code]docker ps[/code] 查看在运行的容器
[code]docker ps -a[/code] 查看全部运行的容器
[img]http://img.1sucai.cn/uploads/article/2018010710/20180107100154_3_16220.png?20161112102119[/img]
查看先用的容器
删除镜像和容器(为了好理解什么是镜像什么是容器,我是这么想的,镜像就是一个什么都没有装关闭着的电脑,容器就是安装了需要的软件运行中的电脑)
[code]docker rm [/code] 删除容器
[code]docker rmi [/code]删除镜像
[code]docker rmi c54a2cc56cbb[/code] 就会删除hello-world镜像
[code]docker rmi c5[/code] 也会删除hello-world镜像 因为c5能在你的镜像列表里面代表唯一的镜像,docker会帮你自动补全
<span style="color: #ff0000">[b]LAMP[/b]</span>
查找hub.docker.com里面的Ubuntu版本
<div class="sucaicode">
<pre class="brush:bash;">
docker search ubuntu</pre>
</div>
安装Ubuntu
<div class="sucaicode">
<pre class="brush:bash;">
docker pull ubuntu # 这样安装的Ubuntu版本是16.04的
docker pull ubuntu:14.04 # ubuntu 14.04 版本</pre>
</div>
进入Ubuntu容器,安装软件
<div class="sucaicode">
<pre class="brush:bash;">
docker run <image id> -i -t /bin/bash # -i 同步输入 -t 同步输出 -d 持续运行
然后就进入到了熟悉的Ubuntu
安装 vim apache2 mysql php5 redis
apt-get update
apt-get install vim
apt-get install apache2
apt-get install mysql-server
apt-get install php5 libapache2-mod-php5 php5-gd php5-mysql
apt-get install redis-server php5-redis</pre>
</div>
安装完成之后 exit 退出bash,当前容器就会停止
如果运行的时候加了[code]-d[/code] 参数就可以通过 attach 和 exec 再次进去容器
<div class="sucaicode">
<pre class="brush:bash;">
docker attach -i -t <container id> /bin/bash
docker exec -i -t <container id> /bin/bash</pre>
</div>
使用[code]docker ps -a[/code] 查看当前的容器
我们刚刚弄好的容器当然需要保存一下成镜像,不然每次使用这个容器的时候都需要安装软件,使用[code]commit [/code]命令
<div class="sucaicode">
<pre class="brush:bash;">
docker commit -m"description" <container ID> new_name</pre>
</div>
再次[code]docker images[/code] 就会发现刚刚提交的images出现在列表里面了
映射本地端口到容器端口 映射本地文件夹到容器文件夹
<div class="sucaicode">
<pre class="brush:bash;">
docker run -itd -p 8989:80 -v /Users/PHP/wwwroot:/var/www/html 74b3eadeafea /bin/bash</pre>
</div>
-p 将本地的8989端口映射到容器的80端口
-v 将本地的 文件夹映射到服务器Apache默认的网站目录下
<span style="color: #800000">[b]将自己的镜像上传到hub.docker.com[/b]</span>
首先到docker.com注册账号,新建一个 REPOSITORY
<div class="sucaicode">
<pre class="brush:bash;">
docker login # 登录docker
docker tag <images ID> <namespace>/<image name>:<version tag eg latest>
docker push <namsoace>/<image name> # 等待上传完了就好了</pre>
</div>
[img]http://img.1sucai.cn/uploads/article/2018010710/20180107100154_4_30660.png?20161112102436[/img]
上传完了的Tags
<span style="color: #ff0000">[b]总结[/b]</span>
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。