我是一只鸽子精咕咕咕我是一个老是在搭环境的路上翻车的鸽子精呜呜呜 前两天就一直想整PHP的debug,整了两天都没整出来,然后…很有道理的样子
校赛打完了要复盘题目,身为web手竟然只做出来一道web,我好难过 我之前搭建过lnmp环境,但是老是觉得哪里不对劲,今天就又重新装的环境
中途输入密码
因为我之前已经安装好了,所以这里就放上了安装教程 https://www.runoob.com/docker/ubuntu-docker-install.html
直接在终端打开,在终端输入
docker-compose -f xxx.yml up注意:这里docker和-compose中间没有空格,这个地方我踩雷了好几次我都没发现是为啥(我要这双眼睛有何用).
这个命令就可以拉取环境,但是我发现我没有安装这个compose…
安装过程比较慢,我一直以为它会自动停止,结果还得手动停止???然后我就在寻思为啥不行啊,去换源之后还是这样,结果一直在重复这个步骤,docker ps -a命令显示了一堆,只好用rm删除了 其实第一遍就已经成功了,我的脑子也不好使了呜呜呜
首先查看是否现在开了哪些容器
docker -ps查看所有的容器
docker ps -a开启easyrce的容器
docker start xxxid之后我就访问,发现是404(猛虎落泪) 就寻思着是不是之前拉取环境时候文件没拉下来
docker exec -it xxxxid /bin/bash查看文件内容也没毛病,直到我看到了端口竟然是80,我又懂了 然后我就寻思着映射到别的端口,结果结果!怎么都映射不上,我这个笨蛋连大佬的博客也看不懂,哭唧唧
其实最好用的方法就是stop之后指定端口重新run,就成功的指定了端口
docker run -p 1000:80 -d easyrce_www端口映射主要是通过-P和-p参数来实现的
-P: 随机端口映射,容器内部端口随机映射到主机的端口
-p: 指定端口映射,格式为:主机(宿主)端口:容器端口
冒号前面的是指定开放的端口,也就是我们想要访问的端口,后面的为现在的端口,一般端口映射为:
docker run -it -d -p 127.0.0.1:5000:5000 docker.io/centos:latest /bin/bash127.0.0.1:5000为指定ip端口, -it指已交互模式运行容器并重新分配一个未输入终端 docker.io/centos:latest为镜像的名字 /bin/bash的原因是docker后台必须运行一个进程,否则容器就会退出,在这里表示启动容器后启动bash。
题目还没复现,环境整了一天,不过我也正好学习学习docker的使用,也不算是对docker一无所知了 这些东西本来应该是基操,我还整了一整天,我真的好菜啊