Docker实验:Docker安装、Nginx、Dockerfile、Docker build、上传镜像Docker Hub

NAT模式

虚拟机联网
能够ping通www.baidu.com

安装

1、安装yum工具

yum install -y yum-utils \
           device-mapper-persistent-data \
           lvm2 --skip-broken

2、更新本地镜像源

# 设置docker镜像源
yum-config-manager \
    --add-repo \
    https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo

yum makecache fast

3、安装Docker

yum install -y docker-ce

 

4、关闭防火墙

# 关闭
systemctl stop firewalld
# 禁止开机启动防火墙
systemctl disable firewalld

5、启动Docker(关闭、重启)

systemctl start docker  # 启动docker服务

# 停止docker服务
systemctl stop docker  
# 重启docker服务
systemctl restart docker  

6、查看docker版本

docker -v

 

7、配置镜像加速器(阿里)

加速文档:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://fnn9a8it.mirror.aliyuncs.com"]
}
EOF
systemctl daemon-reload
systemctl restart docker

Nginx

1、Docker pull 拉取镜像实现服务

docker pull nginx
docker run -d -p 80:80 nginx  运行该nginx实例

或docker run -d -p 8080:80 nginx  当然你也可以运行该nginx实例在另一个端口

 

补充:删除多余的运行容器,删除镜像(选)

#f66 为CONTAINER ID的前三位

docker stop f66

docker rmi df1

2、查看容器运行信息、查看本地镜像

docker ps  #查看容器运行信息

docker images  #查看本地镜像

 

3、修改nginx配置文件

通过dockerHub官网,nginx的html文件的路径在/usr/share/nginx/html中,nginx的配置文件主要在/etc/nginx/nginx.conf中

# 首先创建相应的文件夹
mkdir -p \
/tmp/nginx/html \
/tmp/nginx/conf
# 复制配置文件和文件夹到宿主机指定目录,注意,这里一定要保证你的nginx容器已经运行
docker cp xmf:/etc/nginx/nginx.conf /tmp/nginx/conf/


docker run \
--name xmf \
-d \
-v /tmp/nginx/html:/usr/share/nginx/html \
-v /tmp/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-p 80:80 \
nginx
gedit /tmp/nginx/conf/nginx.conf

需要修改的内容:注释并添加
#include /etc/nginx/conf.d/*.conf;
    server {
        listen 80;
        server_name xmfdocker;
        location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
        }
    }
#nginx.conf文件内容
user  nginx;
worker_processes  auto;

error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

    #include /etc/nginx/conf.d/*.conf;
    server {
        listen 80;
        server_name xmfdocker;
        location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
        }
    }
}

 在/tmp/nginx/html目录下添加index.html文件

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Dokcer</title>
    <style>
      body {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100vh;
      }
    </style>
  </head>
  <body>
    <h1 style="text-align: center;">姓名:张氏</h1>
    <h2 style="text-align: center;">学号:2123</h2>
  </body>
</html>
docker ps
docker exec -it <container_id> bash
service nginx restart
docker start xmf

 补充指令:docker运用nginx:(根据自己的情况选用)

# 启动现有的容器:name:xmf

docker start xmf

# 创建新的容器

docker run -d --name xmf2 -p 80:80 nginx
# 删除现有的容器:name:xmf

docker rm -f xmf

# 进入正在运行的容器:

docker exec -it <container_id> bash

# 重新启动Nginx服务

service nginx restart
用网页打开:127.0.0.1:80

Dockerfile

1、编写一个Dockerfile

# 新建文件夹
mkdir baseos
cd baseos
# 创建dockerfile文件
touch dockerfile
#内容:
FROM centos:7
MAINTAINER abc <abc@126.com>   #填写自己的邮箱和名字
ENV MYPATH /usr/local
WORKDIR $MYPATH
RUN yum -y install vim   net-tools
EXPOSE 80
CMD /bin/bash

# 下面执行build命令生成image文件
docker build -t mycentos:1.0 .

 2、查看新生成的镜像文件、查看镜像构建过程

# 通过docker images来查看新生成的镜像文件

docker images

# 查看镜像构建过程

docker history eb5157e37f3c

 3、进入容器,执行ifconfig

# 进入容器,看看是否能够执行ifconfig 及vim命令

docker run -it mycentos:1.0

ifconfig

# 退出 exit

 上传镜像

1、注册docker账号、创建docker Hub(需要魔法)

https://hub.docker.com/、 https://registry.hub.docker.com/

2、登录docker

docker login

# 登出、退出

docker logout

3、在docker账号下构建带有ID的镜像

# 最后面的“.”是必须要的

docker build -t fanlier/mycentos:1.0 .

#格式为: dockerId/镜像名:标签  . 

 

4、推送到远程仓库

# 格式: dockerId/镜像名:标签

docker push fanlier/mycentos:1.0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值