docker的安装和使用

news2024/12/23 15:50:30

1.新建一个项目 比如vue init vue@latest完事之后运行打包到build目录下

2.在项目根目录下通过执行命令
touch Dockerfile
在这里插入图片描述
3.拉取nginx镜像
首先打开你的Docker,默认会启动。控制台拉取 Nginx 镜像:运行

docker pull nginx

在这里插入图片描述
4.在根目录创建Nginx配置文件

touch default.conf

写入:

server {
    listen       80;
    server_name  localhost;

    #charset koi8-r;
    access_log  /var/log/nginx/host.access.log  main;
    error_log  /var/log/nginx/error.log  error;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
}

5.配置镜像
打开Dockerfile文件,写入:

FROM nginx  
COPY dist/ /usr/share/nginx/html/  
COPY default.conf /etc/nginx/conf.d/default.conf  

解释一些对应代码的大概意思:

  1. FROM nginx 指定该镜像是基于 nginx:latest 镜像而构建的;

  2. COPY dist/ /usr/share/nginx/html/ 命令的意思是将项目根目录下 dist 文件夹中的所有文件复制到镜像中 /usr/share/nginx/html/ 目录下;

  3. COPY default.conf /etc/nginx/conf.d/default.conf 将 default.conf 复制到 etc/nginx/conf.d/default.conf,用本地的 default.conf 配置来替换 Nginx 镜像里的默认配置。

6.构建镜像

docker build -t vue2.0-system .

在这里插入图片描述
出现上面的信息表示构建成功
-t 参数给镜像命名 vue2.0-system
. 是基于当前dockerfile目录来构建的镜像

运行docker image ls | grep docker-demo-vue查看镜像,可以看到我们构建镜像的大小
在这里插入图片描述
7.运行容器
docker run -d -p 3000:80 --name docker-vue vue2.0-system
在这里插入图片描述
命令说明:
-d 设置容器在后台运行
-p 表示端口映射,把本机的 3000 端口映射到 container 的 80 端口(这样外网就能通过本机的 3000 端口访问了。
–name 设置容器名 docker-vue
vue2.0-system 是我们上面构建的镜像名字
可以运行docker ps -a 查看容器id:

8.访问项目
我们打开http://localhost:3000/,就可以在浏览器中看到对应的页面,跟我们前面创建项目的时候看到的界面是一样的
也可以使用curl -v -i localhost:3000 去查看对应的静态文件
在这里插入图片描述

docker的发布流程

// 1.查看目前已经在运行的容器有哪些
docker ps 
docker ps -a 查看全部的容器

// 2. 停掉某一个容器
docker stop 容器ID

// 3.删除容器
docker rm 容器ID

// 4. 查看已经运行的镜像
docker images
docker images -a   // 查看全部镜像

// 5. 删除镜像
docker rmi 镜像id

// 6. 在创建镜像 注意后面的点 .    创建之后查看  docker images
docker build -t  my-vue . 

// 7.创建容器
docker run -d -it --add-host="jeecg-boot-system:127.0.0.1" -p 80:80 jeecg-boot-ui

// 8. 查看容器是否启用成功
docker ps  / docker container ls
或者docker ps -a
或者 docker logs -f  容器ID 查看是否运行

// 9.docker stats 查看容器资源占用
docker stats 容器名

// 10.

在这里插入图片描述
作为一名前端工程,掌握基本的前端打包发布流程很有必要

这里解释一下 创建容器的这个指令的意思
docker run -d -it --add-host=“jeecg-boot-system:127.0.0.1” -p 80:80 jeecg-boot-ui

  1. -d: 后台运行容器,并返回容器ID;
  2. -it:可交互式、赋予 tty 的方式
  3. -p:host-port:container-port:宿主机与容器端口映射,方便容器对外提供服务, 一般发布都是以80为主,因为80可以省略,如果是其他端口,在访问浏览器的时候就需要带上端口号了
  4. –add-host 就是配置host,部署在docker环境的项目,需要通过域名访问外部一些资源,但因为没有配置dns解析,因此需要通过配置hosts来进行访问,所以需要配置host

启动 nginx 容器,并在本地 8888 端口进行访问 命令:
docker run --rm -it --name nginx -p 8888:80 nginx:alpine

–rm:当停止容器时自动清除容器

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/721963.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【多线程】锁策略

1. 说在前面 这里的锁策略内容,属于典型的面试八股文!如果未来工作,需要实现一把锁,那么得好好研究下锁策略,但基本上不会让我们自己设计一把锁的。 而这里的锁策略内容不局限于 Java,任何 "锁" …

python接口自动化(十七)--Json 数据处理---一次爬坑记(详解)

简介 有些 post 的请求参数是 json 格式的,这个前面发送post 请求里面提到过,需要导入 json模块处理。现在企业公司一般常见的接口因为json数据容易处理,所以绝大多数返回数据也是 json 格式的,我们在做判断时候,往往只…

golang 实现四层负载均衡

大家好,我是蓝胖子,做开发的同学应该经常听到过负载均衡的概念,今天我们就来实现一个乞丐版的四层负载均衡,并用它对mysql进行负载均衡测试,通过本篇你可以了解到零拷贝的应用,四层负载均衡的本质以及实践。…

代码模版-element plus如何进行前端校验输入框

文章目录 步骤一:引入 element plus 框架步骤二:使用 element plus 的 form步骤三:form 明确指定 rules步骤四:事件触发校验 使用 vue3 element plus 步骤一:引入 element plus 框架 先 npm 安装 在 src/main.js 中…

linux[armbian]环境安装nginx

文章目录 linux[armbian]环境安装常用命令遇到的问题和解决方法问题一:conf/koi-win复制错误解决方法问题二:缺少相关的日志目录解决方法 linux[armbian]环境安装 下载Nginx: 访问[Nginx官方网站](https://nginx.org/)&#xff0c…

排序算法(1):冒泡排序

在计算机科学领域,排序算法是一个重要的主题。冒泡排序法是最基础且简单的排序算法之一,它的原理简单易懂,是学习排序算法的理想起点。本文将详细介绍冒泡排序法的原理、实现方法以及优化技巧,帮助读者全面了解和掌握这一经典算法…

重新安装conda时报错

自己因为最近利用 conda 安装了比较多的软件,在输入创建环境时: conda create -n python27 python2.7 报错,环境创建不成功。 显示 miniconda3 文件夹已存在 (因为安装时会默认安装至此目录,如果此目录已经存在则会冲突报错&…

【基础算法】贪心算法

贪心算法又称贪婪算法,是一种常见的算法思想。贪心算法的优点是效率高,实现较为简单,缺点是可能得不到最优解。 贪心算法的基本思想 贪心算法就是在求解问题时,总是做出当前看来最好的选择。也就是说贪心算法并不从整体最优上考…

word转PDF后图片为何会变小?怎么解决?

有些同学反映将Word文档转换为PDF后,发现里面的图片居然变小了,这是什么原因造成的?该怎么解决呢? 先来说说原因,我个人认为可能是由以下原因造成的: 1、word插入图片后压缩“太狠”了。当你在word中插入…

GENMARK控制器维修S08S4P.D工业电脑维修

机器人GENMARK SYSTEM CONTROLLER系统控制器维修S08S4P.D工业电脑;晶圆转移机器人SΛΛALL CONTROLLER; SΛΛC1100 半导体设备机械臂GENMARK控制器等 GenMark的两大构架:eSensor(电子传感)和Elecitrowetting&#xf…

ibaq intensity 蛋白组学 蛋白质组学两个定量方法(iBAQ和LFQ)的区别及常见的标准化方法

4.MaxQuant中的Intensity,LFQ和iBAQ 大佬的软件,三种定量算法都发了文章。 Intensity是将某Protein Groups里面的所有Unique和Razor peptides的信号强度加起来,作为一个原始强度值。用得很少。iBAQ是在Intenstiy的基础上,将原始…

JUC#线程池加锁逻辑梳理

带着问题看源码 为什么要用线程池?Java是实现和管理线程池有哪些方式? 请简单举例如何使用。为什么很多公司不允许使用Executors去创建线程池? 那么推荐怎么使用呢?ThreadPoolExecutor有哪些核心的配置参数? 请简要说明ThreadPoolExecutor可以创建的是哪三种线程池呢?当…

【Web3】Web3Js高频Api

目录 Web3Js方法 初始化Web3实例 Web3Api 创建账号Api 获取余额Api 单位转换工具函数 Web3Js方法 web3.eth:用于与以太坊区块链和智能合约之间的交互。 web3.utils:包含一些辅助方法。 web3.shh:用于协议进行通信的P2P和广播。 web3…

1066 Root of AVL Tree (PAT甲级)

这道题类似1123题。 #include <cstdio> #include <algorithm>struct node{int key;node* left nullptr;node* right nullptr; };int N, t; node* root nullptr;int getHeight(node* r){if(!r){return 0;}return std::max(getHeight(r->left), getHeight(r-&…

【json-server】json-server安装与使用:

文章目录 一、下载安装:二、启动db.json数据及相关参数&#xff1a;三、创建json数据——db.json&#xff1a;四、修改端口号&#xff1a;五、操作数据&#xff1a;【1】常规获取&#xff1a;【2】过滤获取 Filter:【3】分页 Paginate&#xff1a;【4】排序 Sort&#xff1a;【…

使用 .editorconfig 文件来统一编程风格

做过长期开发的程序员都知道保持编程风格统一的重要性, 统一的风格能够降低各种成本. 有一句名言是咋说的来着? 代码主要是给人看的, 其次才是给电脑去运行. 但另一方面, 大家又普遍是偷懒的, 对于这些长期会受益, 但短期收益不明显甚至带来麻烦的事, 许多团队中的成员不能说抵…

产品经理进阶:硬件产品定价指南

目录 介绍 基于成本的定价 基于市场的定价 基于价值的定价 总结一下 CSDN学员课程 优惠活动通知 介绍 定价本身其实是一个相对复杂的过程。 因为有很多变量会影响到你最终的定价。 比如说&#xff1a;客户的维度、竞争对手的维度、成本的维度等等。 但是无论如何&am…

Impala3.4源码阅读笔记(三)data-cache的Store实现

前言 本文为笔者个人阅读Apache Impala源码时的笔记&#xff0c;仅代表我个人对代码的理解&#xff0c;个人水平有限&#xff0c;文章可能存在理解错误、遗漏或者过时之处。如果有任何错误或者有更好的见解&#xff0c;欢迎指正。 正文 本文顺承前文Impala3.4源码阅读笔记&a…

mac电脑上,webm格式怎么转换成mp4?

mac电脑上&#xff0c;webm格式怎么转换成mp4&#xff1f;webm格式的视频也是最近几年也越来越多的&#xff0c;小编最近就不止一次的下载到过webm格式的视频&#xff0c;很多小伙伴肯定对它还并不是很了解&#xff0c;webm是由谷歌公司所提出以及开发出来的视频文件格式&#…

matlab读取STK生成的报告

一、STK 和 Matlab的生成的图片对比 &#xff08;一&#xff09;STK图片 &#xff08;二&#xff09;Matlab图片 &#xff08;三&#xff09;STK生成的报表数据 "Time (UTCG)","Azimuth (deg)","Elevation (deg)","Range (km)" 20 J…