docker 构建镜像 获取镜像 Docker 运行容器前需要本地存在对应的镜像,如果本地不存在该镜像,Docker 会从镜像仓库下载该镜像
从 Docker 镜像仓库获取镜像的命令是
docker pull
格式 docker pull [选项] [Docker Registry 地址[:端口号]/] 仓库名[:标签]
# 默认官方镜像库拉取,latest 标签
$ docker pull ubuntu
# 指定版本标签
$ docker pull ubuntu:18.04
# 指定仓库域名(默认官方仓库)
$ docker pull library/ubuntu
# 第三方服务商或私有
2017-10-20
1434
Docker
查看更多
语义化标签 HTML 5的革新之一:语义化标签.
在HTML 5出来之前,我们用div来表示页面章节,但是这些div都没有实际意义。(即使我们用css样式的id和class形容这块内容的意义)。这些标签只是我们提供给浏览器的指令,只是定义一个网页的某些部分。但现在,那些之前没“意义”的标签因为因为html5的出现消失了,这就是我们平时说的“语义”
如上图那个页面结构没有一个div,都是采用html5语义标签.
但是也不要因为html5新标签的出现,而随意用之,错误的使用肯定会事与愿违;
所以有些地方还是要用div的,就是因为div没有任何意义的元素,他只是一个标签,仅仅是用来构建外观和结构
2017-10-11
1487
html5
查看更多
前言 早期 Unix (第 1-6 版,1969-1975)的命令行解释器依赖独立程序 /etc/glob 展开参数中的通配符。
这个程序会展开通配符并把展开后的文件列表传给命令。
它的名字是 "global command" 的简称。
后来这个功能由工具函数 glob() 提供,被 shell 等程序使用。 -- 维基百科
python语言中有了golb封装的包,接着有了今天我们看到的JavaScript实现的glob.
Glob可以做什么 它可以根据指定的通配符来匹配文件,并且把匹配到的结果列表返回给你.
安装 npm install glob
用法 v
2017-09-28
3391
nodejs
查看更多
模拟一个枚举类 日常我们遇到用一个静态类来定义常量
public class Weekday {
public static final int SUN = 0;
public static final int MON = 1;
public static final int TUE = 2;
public static final int WED = 3;
public static final int THU = 4;
public static final int FRI = 5;
public static final int
2017-09-05
1437
Java
查看更多
前言 由于现在的项目都流行前后端分离,
导致后端部署服务和前端一定不会解析到一个服务上,
这样面临的就是跨域请求.
什么情况下会出现跨域请求点击查看这篇博文介绍.
解决跨域的方法
nginx设置跨域请求头点击查看
服务端代码解决跨域
今天我们介绍后者,服务器端如何解决跨域.
Express框架下设置跨域请求
cors安装包
自己定义中间件
cors安装包 npm install cors --save
使用
const cors = require('cors');
server.use(cors());
自定义中间件 项目 middlewares 文件夹下创建 cors.js
m
2017-07-25
2835
nodejs
查看更多
定义 String是不可变字符
StringBuffer是可变的字符
StringBuilder也是可变的字符
StringBuffer和StringBuilder的区别 StringBuffer对象是线程安全的,这意味着StringBuffer对象可以同时被多个并行线程修改,因为它所有的方法都被声明为"synchronized(同步)";
StringBuilder类是JDK1.5版引入的非线程安全的类,这意味着它的所有方法都是非同步方法;
因此,在单一模型的应用中,我们应该使用StringBuilder,这样对象不会有锁定和解锁,这样性能就会增加;
如何选择Strin
2017-07-22
1361
Java
查看更多
Mac键盘符号和修饰键说明 ⌘ Command
⇧ Shift
⌥ Option
⌃ Control
↩︎ Return/Enter
⌫ Delete
⌦ 向前删除键(Fn+Delete)
↑ 上箭头
↓ 下箭头
← 左箭头
→ 右箭头
⇞ Page Up(Fn+↑)
⇟ Page Down(Fn+↓)
Home Fn + ←
End Fn + →
⇥ 右制表符(Tab键)
⇤ 左制表符(Shift+Tab)
⎋ Escape (Esc)
编辑 Control + Space 基本的代码补全(补全任何类、方法、变量)
Control + Shift + Space 智能代码补全(过滤器方法列
2017-07-11
1330
Java
查看更多
什么是java中的抽象方法 抽象方法是一种特殊的方法:
它只有声明,而没有具体的实现
例如:
abstract void eat();
上面定义了一个方法 eat() ,有修饰关键词 abstract ,而且只有方法签名,没有方法的具体实现,
这就是一个java中的 抽象方法.
我们可以看到关键词 abstract 前面再没有任何修饰关键词 [ public , protected 或者 private ]
为什么不能有修饰关键词,我们留到下面再讲.
什么是java中的抽象类 一个类含有抽象方法,则称这个类为抽象类
抽象类必须由关键词 abstract 修饰;
我们来看一个抽象类的示例:
2017-06-21
1260
Java
查看更多
前言 wget命令用来从指定的URL下载文件。
wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性,如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。
如果是服务器打断下载过程,它会再次联到服务器上从停止的地方继续下载。
这对从那些限定了链接时间的服务器上下载大文件非常有用。
格式 wget [参数] [URL地址]
选项 -a<日志文件>:在指定的日志文件中记录资料的执行过程;
-A<后缀名>:指定要下载文件的后缀名,多个后缀名之间使用逗号进行分隔;
-b:进行后台的方式运行wget;
-B<连接地址>:设置参考
2017-06-18
2261
linux
查看更多
#安装 ifconfig报错
ifconfig是在类Unix作业系统中于命令行界面下或系统配置脚本中用于配置、控制及查询TCP/IP网络接口的系统管理工具.
我们一版用它来查看网卡
ifconfig
bash: ifconf: command not found
提示没有安装ifconfig
于是我们会本能的
apt-get install ifconfig
依然报错:
root@0d7cceb6b1c4:/# apt-get install ifconfig
Reading package lists... Done
Building dependency tree
Reading
2017-05-20
1797
linux
查看更多
介绍 tail命令用于输入文件中的尾部内容。
tail命令默认在屏幕上显示指定文件的末尾10行。
如果给定的文件不止一个,则在显示的每个文件前面加一个文件名标题。如果没有指定文件或者文件名为“-”,则读取标准输入。
语法 tail(选项)(参数)
选项参数 -f 循环读取
-q 不显示处理信息
-v 显示详细的处理信息
-c<数目> 显示的字节数
-n<行数> 显示行数
--pid=PID 与-f合用,表示在进程ID,PID死掉之后结束.
-q, --quiet, --silent 从不输出给出文件名的首部
-s, --sleep-interval=S
2017-05-11
1852
linux
查看更多
什么是java中的块级作用域 一对大括号括起来的代码区域叫做一个块级作用域;
{...} 在块级中定义的变量被称作局部变量;
局部变量的生命周期:从被定义的位置开始,到本块结束.
注意事项
一个块可以嵌套在另一个块中
子块可以访问父块中的变量的
父块不能访问子块的变量
子块不能定义与父块同名的变量
在不嵌套的块中可以定义同名的变量;
public class com.yijiebuyi
{
public static void main(String args[])
{
{
int k = 1;
2017-04-19
1858
Java
查看更多
什么是哈希算法 区块链中每个区块都有一个唯一的哈希标识,被称为区块哈希,区块通过记录上一个区块的哈希来指向上一个区块.
这里说说的哈希算法,又称散列算法,它是一个单向函数,可以把任意长度的输入数据转化为固定长度的输出.
我们对下面的字符串求哈希值:
采用SHA-256算法:
yijiebuyi.com
f4353d56fc3482fe1acd7456b7431acc9dbaa252a82dc1293161ab4fd26368e5
yijiebuyi.com
bea4b45352c6101f2c2a7d47ec024b3d7c50a72e38e611b5b3c0d9d33b904983
上
2017-04-15
1712
区块链
查看更多
前言 首先要了解你现在遇到的问题是否和我一样!
nginx -v
nginx version: nginx/1.16.1
以下方法针对 1.7以上的nginx版本有效.
问题描述 项目使用前后端分离
前端有一部分路由需要代理请求 api 服务
类似这样:
前端域名:http://a.com
api域名: http://b.com
前端页面展示列表数据:
ajax请求:
http://a.com/api/bloglist
nginx配置:
location /api {
proxy_pass http://b.com/;
# 设
2017-04-08
13772
开发工具
查看更多
nginx反向代理node.js服务器
我们服务器上node.js部署的服务通常会用 pm2 或者 forever 等工具接管,
然后nginx反向代理对应node.js服务所绑定的端口.
server {
listen 80;
server_name yijiebuyi.com;
access_log **这里是log日志目录** main;
client_max_body_size 50m;
location / {
root html;
exp
2017-03-28
3112
linux
查看更多
概述 容器技术对进程进行封装隔离,属于操作系统层面的虚拟化技术。
由于隔离的进程独立于宿主和其它的隔离的进程,因此称为容器。
Docker 在容器的基础上,进行了进一步的封装,从文件系统、网络互联到进程隔离等等,极大的简化了容器的创建和维护。
使得 Docker 技术比虚拟机技术更为轻便、快捷。
通过对应用组件的封装、分发、部署、运行等生命周期的管理,达到应用级别的一次封装,到处运行
docker 组成
镜像 Image
容器 Container
仓库 Repository
镜像 Image
Docker 镜像是 一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还
2017-03-09
1395
Docker
查看更多
当多人协同开发时,
或者服务器代码被人改动时,
git pull 时,提示你本地代码有改动,需要提交合并....
git强制拉取代码 git fetch --all
回退到当前版本修改之前的状态 git reset --hard origin/master
注意:你当前的分支
获取代码服务器最新版本 git pull
出自:Git pull 强制拉取并线上代码覆盖本地
2017-02-22
4433
开发工具
查看更多
前段时间写过一篇关于showdown和showdown-toc插件自动生成目录的博客 ⬅️点击查看
为什么要改进
showdown-toc作为专门为showdown开发的 toc 插件,搭配使用都非常方便
安装showdown ,showdown-toc
toc插件集成到showdown代码中
const Showdown = require('showdown');
const showdownToc = require('showdown-toc');
const showdownHighlight = require("showdown-highlight");
const to
2017-02-06
2833
开发工具
查看更多
gulpfile.js文件
var gulp = require("gulp");
var concat = require("gulp-concat");
var uglify = require('gulp-uglify');
var cssmin = require('gulp-cssmin');
var wrap = require("gulp-wrap");
var expressService = require('gulp-express-service');
var wwwroot = './static/';
var paths = {
scripts: ['stat
2017-01-30
3327
开发工具
查看更多
markdown如何转化成html
markdown 文本转化成 html 成熟的工具有不少,
node 开源库中有
markdown-it
showdown
markdown-to-html
marked
markdown
上面的工具各有优势,自行google开源地址,找到一款最适合自己的.
本人博客一直是markdown编辑器撰写,
然后,一直再琢磨如何通过标题来自动生成内容目录,
造轮子的事情还是留给大牛们,
我们能把轮子使用好也是对大牛们的敬仰和支持.
markdown-it 介绍 开源地址: https://github.com/markdown-it/markdown-it
2017-01-22
5719
开发工具
查看更多
什么是node.js 的中间件 在整个web请求的生命周期中,
客户端request 过来一个请求,
接着服务器端做出响应处理,
最后response结果给客户端.
上面这个请求过程中,其中服务器端做出响应处理时,会有一系列处理单元,这些处理单元可以简单的理解成中间件.
node.js中间件:
它泛指一种设计模式、一系列的处理单元、过滤器和处理程序;
以函数的形式存在,形成一个异步队列,来完成对数据的预处理和后处理;
它的优点在于灵活处理业务逻辑中的单元模块;
使用中间件我们用极少的操作就能得到一个插件,用最简单的方法就能将新的过滤器和处理程序扩展到现有的系统上.
Express 中间件实现
2016-12-26
1704
nodejs
查看更多
UCloud 云服务器硬盘扩容后如何挂载到本机
UCloud 提供的云服务器会根据不同的系统初始化不同空间大小的硬盘资源,此资源默认为 系统盘.
针对 Linux 系统默认初始化 20G 的空间,一般未独立购买云硬盘的客户,会把数据,服务等所有资源统统放到系统盘上.
针对小型服务,或者比如说我自己的博客所在的服务器,20G 足够用,或者说足够用很长时间,直到系统盘所剩空间不足时,面临一个不得不解决的问题, 扩容
如何动态扩容
各大云服务器厂商都支持动态扩容,我们以 UCloud 为例
之前默认系统盘20G ,现在数据盘扩容 70G
服务器终端显示 df -lh
Filesyst
2016-12-06
10751
linux
查看更多
文章目录
java架构师
职责
坐标
要求
福利
薪资
Java高级开发
职责
坐标
要求
薪资
Java开发
职责
学历
坐标
要求
福利
薪资
职位已关闭
java架构师 职责
负责设计并参与产品的方案讨论、技术选型、架构设计等环节.
负责产品架构的搭建和实施.
根据行业内最新产品和技术的发展方向,制定产品架构发展战略规划
坐标
北京 - 西二旗城铁
要求
1、有5年以上开发或管理工作经验,3年以上互联网平台或大型网站架构经验;
2、熟悉J2EE和Struts,Hibernate/MyBatis,Spring等开源框架;
3、精通MySQL+Nginx/Ap
2016-12-05
10674
招聘
查看更多
mongodb 在centOS 64位服务器上安装
UCloud 云服务器
CentOS 系统
64 位
Step 1 设置mongodb源 vim /etc/yum.repos.d/mongodb.repo
copy 下面内容
[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
gpgcheck=0
enabled=1
保存上面内容并退出
Step 2 安装mongodb yum install mongo-10gen mongo-10
2016-11-18
7098
mongodb
查看更多
上次推荐了数据库管理工具 DataGrip
今天在连接线上一个数据库的时候,直接报错.
"Cannot load from mysql.proc.The table is probably corrupted"
之前在使用 Navicat 连接数据库时并没有发现此问题.
此问题产生的原因:
LINUX下将mysql从5.1升级至5.5后,存储过程不能用了.
mysql.proc升级时有个字段没有升级成功.
在5.1中mysql.proc表的comment字段是varchar(64):
但在5.5中应该是text:
comment text CHARACTER SET
2016-11-16
7488
开发工具
查看更多
JetBrains DataGrip for Mac 介绍
DataGrip支持几乎所有主流的关系数据库产品,如DB2、Derby、H2、MySQL、Oracle、PostgreSQL、SQL Server、Sqllite及Sybase等,并且提供了简单易用的界面,开发者上手几乎不会遇到任何困难。目前市场上已经存在很多数据库客户端,如MySQL WorkBench、Toad、NaviCat、phpMyAdmin、Sequel Pro、SQLWave等等,这些既有的产品中,有些是免费的,有些则是收费的。不仅如此,很多开发者与数据库管理员已经习惯了自己所用的工具,那么DataGrip的到来会为大
2016-10-28
8844
开发工具
查看更多
项目名 命名规范 全部小写
如:yijiebuyi , helloworld
package 包名命名规范 强烈推荐使用公司或机构的顶级域名为包名的前缀;
包名的前几个为固定名称, 如果是网站的话,采用网站的域名的反写;
package 包名全部为小写字母,以符号(. )来分隔, 但是不能包含*号,具有实际的区分意义.
如:
com.yijiebuyi.blog //博客系统
com.yijiebuyi.wechat //微信H5服务站
要求
有意义的名词
传达其用途
结合模块名来命名
使用范例 应用系统中经常应用分层,Dao层(数据库访问)、Service层(业务处理)、Web层(页
2016-10-19
1512
Java
查看更多
什么是lua
Lua 是一门扩展式程序设计语言,被设计成支持通用过程式编程,并有相关数据描述设施。 同时对面向对象编程、函数式编程和数据驱动式编程也提供了良好的支持。 它作为一个强大、轻量的嵌入式脚本语言,可供任何需要的程序使用 .(引用自 Lua 5.3 参考手册)
mac 下如何安装 lua
mac 下使用 brew 安装:
brew search lua
brew install lua
查看是否安装成功 ➜ ~ lua
Lua 5.2.4 Copyright (C) 1994-2015 Lua.org, PUC-Rio
> print('Hello World!')
2016-09-24
14002
lua
查看更多
文章目录
长期招聘 node.js 实习生
坐标
门槛
要求
加分项
福利
薪资
联系方式
node.js 相关招聘请联系博主
长期招聘 node.js 实习生 坐标
北京,望京
门槛
无学历要求
无经验要求
无专业要求
要求
对计算机编程非常感兴趣
了解JavaScript 基础知识
有吃苦耐劳精神
有独立思考的能力
一周最少保证工作3天
加分项
开源社区有贡献
有自己的作品或者维护过的作品
有自己的技术博客
福利
专人老司机带你
前端,后端,客户端都有接触,看你个人爱好
可以犯错,可以试错,但是一定有较强的学习能力
薪资
实习按天计算薪酬
能力升级薪资也升级
2016-09-09
9617
招聘
查看更多
JavaScript 中的跨域问题
http://yijiebuyi.com/A.js
http://yijiebuyi.com/B.js
上面情况在同一域名下,不同资源文件 [允许跨域]
http://yijiebuyi.com/blog/A.js
http://yijiebuyi.com/jobs/B.js
上面情况在同一域名下,不同资源目录下的文件 [允许跨域]
http://yijiebuyi.com/A.js
http://yijiebuyi.com:1234/B.js
上面情况在同一域名下,不同端口 [不允许跨域]
http://yijiebuyi.co
2016-09-08
15129
javascript
查看更多