轻量级容器Docker - 创建nginx容器

之前已经为Docker配置好了ssh服务,并创建好了带有SSH服务器的镜像,这里在此基础上安装nginx服务器,使外部可以访问容器中的nginx服务

思路

(1)通过ssh登录容器,安装nginx服务器

(2)创建新的nginx镜像

(3)基于新镜像启动容器,测试nginx服务

操作

(1)安装nginx

启动容器,启动时打开ssh的22端口

docker run -d -p 22 dys/centos:ssh

执行 docker ps 命令,查看 22 对应主机的端口号,我这里是1035

ssh登录容器

ssh root@127.0.0.1 -p 1035

在容器中安装nginx(容器的基础镜像是centos,下面的安装方法是centos下的),安装方法与在普通操作系统中一样

yum install gcc-c++
yum -y install zlib zlib-devel openssl openssl--devel pcre pcre-devel
yum wget
cd
wget http://nginx.org/download/nginx-1.8.0.tar.gz
tar -zxv -f nginx-1.8.0.tar.gz
cd nginx-1.8.0
./configure --prefix=/usr/local/nginx --with-http_stub_status_module
make && make install

启动nginx

/usr/local/nginx/sbin/nginx

本地测试

curl http://127.0.0.1

可以看到获取到了nginx的欢迎页面

退出ssh

(2)创建新的nginx镜像

关闭容器

执行 docker ps 命令,记下容器的ID(这里是 9708d2e3f613)

执行关闭容器的命令

docker stop 9708d2e3f613

执行创建新镜像的命令,指定新镜像的名字为:centos_nginx

docker commit 9708d2e3f613 centos_nginx

(3)启动容器

指定使用新镜像,并打开容器的 22 和 80 端口

docker run -d -p 22 -p 80 centos_nginx

查看一下容器执行状态

docker ps

找到名称为 centos_nginx 的这条信息,看 PORTS 项,值为:

0.0.0.0:1041->22/tcp, 0.0.0.0:1042->80/tcp

说明本机的 1042 端口对应着容器的 80 端口

刚才安装nginx时没有设置自动启动,所以现在还需要ssh登录到容器,执行一下启动nginx的命令

启动后,就可以访问nginx了

http://主机IP或域名:1042

可以看到 nginx 的欢迎页面了

原文发布于微信公众号 - 性能与架构(yogoup)

原文发表时间:2015-06-29

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏腾讯云实验室

搭建 Docker 环境

腾讯云提供了开发者实验室帮助用户搭建 Docker 环境,教程内容如下,用户可以点击开发者实验室快速上机完成实验。

41990
来自专栏北京马哥教育

Docker常用命令汇总

一、查看docker信息 1、查看docker版本 docker version 2、显示docker系统的信息 docker info 二、对image的...

37690
来自专栏技术之路

Docker实践--部署Nodejs应用

  这个例子的目标是为了向大家展示如何在Docker的container里运行Node.js程序。我会先创建一个简单的Node.js web app,来构建一个...

37080
来自专栏刘远飞的专栏

Ansible Playbook 详解

本文通过playbook的简单使用流程、创建用户实例、playbook条件判断以及playbook handlers这四部分,让大家更进一步的详细了解ansib...

1.5K00
来自专栏JMCui

Docker 系列三(容器管理).

    指明了 -d 运行镜像,会返回容器的 id;如果不指明 -d 运行镜像,会打印出 catalina.out 的 日志,在 [crtl +c] 后,容器即...

11930
来自专栏散尽浮华

ubuntu下nginx+php5的部署

ubuntu下nginx+php5环境的部署和centos系统下的部署稍有不同,废话不多说,以下为操作记录: 1)nginx安装 root@ubuntutest...

24650
来自专栏编程坑太多

『中级篇』Docker Compose的安装和基本使用(39)

PS: docker-compose的概念有直观的理解,包括compose的命令行和使用。 建议使用docker-compose up -d 后台来运行,如果不...

9020
来自专栏A周立SpringCloud

Docker系列教程27-在生产环境中使用Docker Compose

在development中使用Compose定义应用程序时,可使用此定义,在不同环境(如CI,staging和production)中运行应用程序。

15650
来自专栏点滴积累

Docker存储

前言 上一篇文章中简单总结了一下docke的基础使用方法,这次我来总结一下有关docker存储方面的相关知识。本文同样建立在CloudMan的系列教程之上,有兴...

46640
来自专栏西安-晁州

Docker学习之Docker容器基本使用

Docker学习之Docker容器基本使用 新建容器并启动 命令格式:docker run --options repository:tag 后台运行 命令格式...

36680

扫码关注云+社区

领取腾讯云代金券