docker简单操作&安装Apache和php

常用命令
docker下安装Ubuntu镜像

docker pull ubuntu (若不指定Ubuntu版本则默认下载最新)

管理使用本地主机镜像

docker images

运行容器

docker run -i -t 2ce2211f2d5 /bin/bash

注:这样可以启动一个容器并开启一个伪终端,若加上 -d 参数则在后台同时开启该容器

加-d 是不会开启一个伪终端的,若想开启伪终端进行交互,则需使用exec 命令

使用exec 加的是容器ID,而用run方式开启伪终端加的是镜像ID,先有run才有exec

那么为什么不能再次用 -i -t 开启一个伪终端呢?如下,若再次用 -i -t 参数开启伪终端,使用ps命令查看只有一个运行容器,但是用 docker ps -a 查看所有容器,会出现两个镜像ID相同,容器ID不同的容器,如果主机映射了Apache端口,那么是不会找到对应的服务的,产生错误。

综上,要么docker run -i -t 直接开启伪终端(这样退出容器后,就不会在后台运行,若想进入容器,需要docker start +容器ID,然后docker exec -i -t 容器ID /bin/bash 开启伪终端,建立交互),要么就加-d参数,这样退出容器,后台依然运行容器,无需start即可exec进入容器,建立交互

删除容器,删除镜像命令(删除容器需要先docker stop停止容器运行)

删除容器:docker rm 容器ID

删除镜像:docker rmi 镜像ID

可以一次删除多个容器、镜像,ID号之间空格分隔

搭建Apache+php7.2
注:以下所有步骤在上边完成,并进入容器内进行

先更新软件

apt-get update

安装Apache2

apt-get install apache2

装php7.2

apt-get install php7.2

关联Apache与php(这样启动Apache服务同时就能启动php服务了)

apt-get install libapache2-mod-php7.2

启动Apache2服务

service apache2 start

查看Apache服务状态

service apache2 status

保存为镜像
注:若不将下载的好的服务,配置保存,下次进入就没了(全是泪。。。)

退出容器

exit

停止运行容器(若不停止容器就打包,可能会成功,但最后某一次(比如隔一天)访问Apache时一定会失败!!!)

docker stop 容器ID(若是直接docker run -i -t 开启容器,则不需要这步)

打包为新镜像

docker commit -a "kill" -m "my apache" 容器ID  apache/php7.2:v1.0
-a:镜像作者
-m:镜像说明
最后边为自己命名的镜像名
如此大功告成,外网想要访问Apache,只需将映射主机端口,进入容器,开启服务即可,Nginx安装大同小异

命令汇总

docker pull ubuntu 下载Ubuntu镜像
docker images 查看本地所有镜像
docker ps 查看运行中的容器
docker ps -a 显示所有容器,包括未运行的
docker rm 容器ID 删除停止运行的容器
docker rmi 镜像ID 删除镜像
docker run -i -t 镜像ID /bin/bash 开启容器并创建伪终端(退出容器,后台不运行)
docker exec -i -t 容器ID /bin/bash 创建伪终端(前提是用 docker run -i -t -d开启的容器,退出容器,后台运行)
apt-get update 更新
apt-get install apache2 安装Apache2
apt-get install php7.2 安装php7.2
apt-get install libapache2-mod-php7.2 关联Apache和php
service apache2 start 启动服务
service apache2 status 查看服务状态
exit 退出容器
docker stop 容器ID 停止运行容器(开启后台运行的情况下)
docker commit -a "kill" -m "my apache" 容器ID apache/php7.2:v1.0 打包成新镜像
docker run -i -t -p 90:80 镜像ID /bin/bash 映射端口并开启容器进行交互
接下来开启服务

  • 9
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值