Docker+nginx在CVM的机器远程发布hellogin

2024-01-20 06:10

本文主要是介绍Docker+nginx在CVM的机器远程发布hellogin,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

有两种方式,一种通过docker容器安装,一种是直接安装, 这里我们通过docker服务安装

常用操作

  1. images是查询当前机器上所有的镜像有哪些
docker images
  1. 删除镜像
docker rmi [MAGE ID ]
  1. 可以查当前运行中的容器
docker ps -a
  1. 开始/停止/删除容器
docker start [CONTAINER ID]
docker stop [CONTAINER ID]
docker rm [CONTAINER ID]
  1. 构建一个docker的镜像文件(-t指定要创建的目标镜像名,注意最后有个”."用来指定Dockerfile的绝对路径)
docker build -t hellogin -f Dockerfile .

build指定版本

docker build -t ordersystem:1.2 -f Dockerfile .
  1. run镜像
    基本命令
docker run --name=hellogin -d -p 9020:8000 hellogin

让本地和远程共享文件

docker run --name=ordersystem -d -p 9020:8000 -c "tail -f /dev/null" -v /usr/local/service/ordersystem:/usr/local/service/ordersystem ordersystem:1.2
  1. docker exec命令能够在运行着的容器中执行命令
    docker ps -a 查看容器id
docker exec -it ffcb1d91e28f /bin/sh
  1. 查看容器ip地址
docker inspect --format='{{.NetworkSettings.IPAddress}}' hellogin

安装操作

rpm和yum区别和联系以及apt-get

apt-get属于ubuntu、Debian的包管理工具

yum则属于Redhat、Centos包管理工具

1. 安装docker

普通linux系统

yum -y install docker

遇到问题用

yum -y --skip-broken install docker

然后用

docker pull golang:alpine3.13

在腾讯的系统上用

yum install docker-ce docker-ce-cli containerd.io -y

启动补了的话用

sudo service docker restart

2.安装vim

docker的Nginx容器中没有vim命令,需要自行安装

apt-get update
apt-get install vim

3. 安装nginx

  1. 直接安装Nginx
    docker pull nginx
  2. nginx直接映射80端口,方便之后映射域名
    docker run --name=nginx -d -p 80:80 nginx

完整操作如下,接下来我们来拆解思路

4  2022-03-28 19:58:32 cd /usr/local/
5  2022-03-28 19:58:32 ls
6  2022-03-28 19:58:47 mkdir service
7  2022-03-28 19:58:50 cd service/
8  2022-03-28 19:58:50 ls
9  2022-03-28 19:58:54 rz
10  2022-03-28 19:59:23 ls
11  2022-03-28 19:59:58 yum -y install docker
12  2022-03-28 20:01:09 yum -y --skip-broken install docker
13  2022-03-28 20:01:23 docker pull golang:alpine3.13
14  2022-03-28 20:01:39  chmod 777 hellogin
15  2022-03-28 20:01:55 docker build -t hellogin -f Dockerfile .
16  2022-03-28 20:02:04 ls
17  2022-03-28 20:02:14 docker images
18  2022-03-28 20:02:38 docker run --name=hellogin -d -p 9020:8000 hellogin
19  2022-03-28 20:04:47 docker pull nginx
20  2022-03-28 20:04:58 docker run --name=nginx -d -p 80:80 nginx
21  2022-03-28 20:05:05 docker inspect --format='{{.NetworkSettings.IPAddress}}' hellogin
22  2022-03-28 20:05:17 docker exec -it nginx /bin/bash 
23  2022-03-28 20:13:27 ps
24  2022-03-28 20:15:36 docker restart nginx

一. 登录到机器,安装docker

11  2022-03-28 19:59:58 yum -y install docker
12  2022-03-28 20:01:09 yum -y --skip-broken install docker
13  2022-03-28 20:01:23 docker pull golang:alpine3.13

二. 上传到机器

进入/usr/local/,创建service,并且将Dockerfile和hellogin上传到service

4  2022-03-28 19:58:32 cd /usr/local/
5  2022-03-28 19:58:32 ls
6  2022-03-28 19:58:47 mkdir service
7  2022-03-28 19:58:50 cd service/
8  2022-03-28 19:58:50 ls
9  2022-03-28 19:58:54 rz
10  2022-03-28 19:59:23 ls

三. 用docker发布hellogin

  1. 修改包权限
    chmod 777 hellogin (是否需要777可以根据自身需求), 构建一个docker的镜像文件(-t指定要创建的目标镜像名,注意最后有个”."用来指定Dockerfile的绝对路径)docker build -t hellogin -f Dockerfile .docker images
  2. 查看所有的镜像

image.png

  1. 查看当前镜像
    docker ps -a
CONTAINER ID   IMAGE          COMMAND                  CREATED       STATUS                      PORTS                               NAMES
853c6e86eee6   nginx          "/docker-entrypoint.…"   2 weeks ago   Up 44 minutes               0.0.0.0:80->80/tcp, :::80->80/tcp   mynginx
602e73e44d10   4247aed57ff5   "./ordersystem"          2 weeks ago   Exited (2) 37 seconds ago 
  1. 运行镜像生成容器( d表示运行在后台,-p表示绑定到指定的主机端口)docker run --name=hellogin -d -p 9020:8000 hellogin

四. 反向代理

有两种方式,一种是通过docker容器安装,一种是直接安装。

docker pull nginx直接安装Nginx

docker run --name=nginx -d -p 80:80 nginx直接映射80端口,方便之后映射域名

  1. 查询容器IP地址docker inspect --format='{{.NetworkSettings.IPAddress}}' hellogin

image.png

  1. 进入nginx,配置代理文件docker exec -it nginx /bin/bash `进入Nginx容器中,配置代理文件
  • 文件在etc/nginx/目录下,可以进入conf.d目录配置default.conf文件

image.png

  1. 按照上面配置完成后,
    exit退出容器,docker restart nginx重启容器,之后就可以通过域名直接访问了

这篇关于Docker+nginx在CVM的机器远程发布hellogin的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/625037

相关文章

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Java实现远程执行Shell指令

《Java实现远程执行Shell指令》文章介绍使用JSch在SpringBoot项目中实现远程Shell操作,涵盖环境配置、依赖引入及工具类编写,详解分号和双与号执行多指令的区别... 目录软硬件环境说明编写执行Shell指令的工具类总结jsch(Java Secure Channel)是SSH2的一个纯J

修复已被利用的高危漏洞! macOS Sequoia 15.6.1发布

《修复已被利用的高危漏洞!macOSSequoia15.6.1发布》苹果公司于今日发布了macOSSequoia15.6.1更新,这是去年9月推出的macOSSequoia操作... MACOS Sequoia 15.6.1 正式发布!此次更新修复了一个已被黑客利用的严重安全漏洞,并解决了部分中文用户反馈的

Web服务器-Nginx-高并发问题

《Web服务器-Nginx-高并发问题》Nginx通过事件驱动、I/O多路复用和异步非阻塞技术高效处理高并发,结合动静分离和限流策略,提升性能与稳定性... 目录前言一、架构1. 原生多进程架构2. 事件驱动模型3. IO多路复用4. 异步非阻塞 I/O5. Nginx高并发配置实战二、动静分离1. 职责2

Mac电脑如何通过 IntelliJ IDEA 远程连接 MySQL

《Mac电脑如何通过IntelliJIDEA远程连接MySQL》本文详解Mac通过IntelliJIDEA远程连接MySQL的步骤,本文通过图文并茂的形式给大家介绍的非常详细,感兴趣的朋友跟... 目录MAC电脑通过 IntelliJ IDEA 远程连接 mysql 的详细教程一、前缀条件确认二、打开 ID

Nginx中配置使用非默认80端口进行服务的完整指南

《Nginx中配置使用非默认80端口进行服务的完整指南》在实际生产环境中,我们经常需要将Nginx配置在其他端口上运行,本文将详细介绍如何在Nginx中配置使用非默认端口进行服务,希望对大家有所帮助... 目录一、为什么需要使用非默认端口二、配置Nginx使用非默认端口的基本方法2.1 修改listen指令

解决Nginx启动报错Job for nginx.service failed because the control process exited with error code问题

《解决Nginx启动报错Jobfornginx.servicefailedbecausethecontrolprocessexitedwitherrorcode问题》Nginx启... 目录一、报错如下二、解决原因三、解决方式总结一、报错如下Job for nginx.service failed bec

Nginx添加内置模块过程

《Nginx添加内置模块过程》文章指导如何检查并添加Nginx的with-http_gzip_static模块:确认该模块未默认安装后,需下载同版本源码重新编译,备份替换原有二进制文件,最后重启服务验... 目录1、查看Nginx已编辑的模块2、Nginx官网查看内置模块3、停止Nginx服务4、Nginx

通过配置nginx访问服务器静态资源的过程

《通过配置nginx访问服务器静态资源的过程》文章介绍了图片存储路径设置、Nginx服务器配置及通过http://192.168.206.170:8007/a.png访问图片的方法,涵盖图片管理与服务... 目录1.图片存储路径2.nginx配置3.访问图片方式总结1.图片存储路径2.nginx配置

Nginx禁用TLSv1.0 1.1改为TLSv1.2 1.3的操作方法

《Nginx禁用TLSv1.01.1改为TLSv1.21.3的操作方法》使用MozillaSSL配置工具生成配置,修改nginx.conf的ssl_protocols和ssl_ciphers,通... 目录方法一:方法二:使用 MoziChina编程lla 提供的 在线生成SSL配置工具,根据自己的环境填充对应的