热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

startdockerdaemonlinux

ubuntudocker环境配置https:blog.csdn.netfareast_mzharticledetails88820445代码以及命令行下载gitclonegit

ubuntu docker环境配置 https://blog.csdn.net/fareast_mzh/article/details/88820445

代码以及命令行下载

git clone git://github.com/luksa/kubernetes-in-action

Start the Docker daemon


Start manually

Once Docker is installed, you need to start the Docker daemon. Most Linux distributions use systemctl to start services. If you do not have systemctl, use the service command.

  • systemctl:

    $ sudo systemctl start docker

  • service:

    $ sudo service docker start

docker run busybox echo "Hello world"

* kubernetes代码下载

git clone https://github.com/kubernetes/kubernetes

* 创建一个简单的node.js docker应用

app.js

const http = require('http');
const os = require('os');console.log("Kubia server starting...");var handler = function(request, response) {console.log("Received require from " + request.connection.remoteAddress);response.writeHead(200);response.end("You'v hit " + os.hostname() + "\n");
}var www = http.createServer(handler);
www.listen(8080);

* 直接在主机上运行

node app.js > ./local.log 2>&1 &curl http://localhost:8080/

You'v hit chenhuimingdeMacBook-Pro.local

fg %1

Ctrl + C kill process

* Dockerfile

FROM node:7
ADD app.js /app.js
ENTRYPOINT ["node", "app.js"]

L1 使用的是node镜像的tag 7版本

L2 把app.js文件从本地文件夹添加到镜像的根目录, 保持app.js这个文件名

L3 定义了当镜像被运行时需要被执行的命令  node app.js

 

* 构建容器镜像

$ tree kubia/

kubia/

|-- Dockerfile

|-- Dockerfile~

|-- app.js

`-- local.log

 

0 directories, 4 files

cd kubia
docker build -t kubia .

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

启动docker服务,  再次执行  docker build -t kubia .

# 以下展示镜像构建的过程。

# 用户告诉Docker需要机遇当前目录 . 构建一个叫kubia的镜像, Docker会在目录中寻找Dockerfile,

# 然后基于其中的指令构建镜像

ending build context to Docker daemon   5.12kB

Step 1/3 : FROM node:7

Get https://registry-1.docker.io/v2/: net/http: TLS handshake timeout

需要Shadowsocks,开启global mode.

* 列出本地存储的镜像

docker images

* 运行容器镜像

docker run --name kubia-container -p 8080:8080 -d kubia

# 基于kubia镜像创建新容器named  kubia-container

# -d --deamon

# 本机上的8080端口会映射到容器内的8080端口(-p 8080:8080)

# 所以可以通过http://localhost:8080访问这个应用

095e11426a7d2b3fe108e3e218a40313318ca0a102963ac6715fafeb733f3bb0

$ curl http://localhost:8080

You'v hit 095e11426a7d

# 主机名现在不是宿主的主机名, 而是container ID

$ hostname

chenhuimingdeMacBook-Pro.local

$ docker ps

CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                    NAMES

095e11426a7d        kubia               "node app.js"       2 minutes ago       Up 2 minutes        0.0.0.0:8080->8080/tcp   kubia-container

$ docker inspect kubia-container

# 查看container底层信息的长json

 

* 在已有容器内部运行shell

$ docker exec -it kubia-container bash

root@095e11426a7d:/# cat app.js
const http = require('http');
const os = require('os');console.log("Kubia server starting...");var handler = function(request, response) {console.log("Received require from " + request.connection.remoteAddress);response.writeHead(200);response.end("You'v hhit " + os.hostname() + "\n");
}var www = http.createServer(handler);
www.listen(8080);

root@095e11426a7d:/# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.2 1.2 614432 26340 ? Ssl 06:35 0:00 node app.js
root 28 0.4 0.1 20244 3232 pts/0 Ss 06:42 0:00 bash
root 34 0.0 0.1 17500 2064 pts/0 R+ 06:42 0:00 ps aux

容器内的进程仍然运行在主机操作系统上 (Linux上可以查看,Mac/Windows需要登录到Docker守护进程的vm中查看)

sudo ps aux | grep app.js

Password:

Mch              14789   0.0  0.0  4277236    796 s002  S+    2:46PM   0:00.00 grep app.js

 

* 停止和删除容器

$ docker stop kubia-container

$ docker rm kubia-container

 


推荐阅读
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 如何使用PLEX播放组播、抓取信号源以及设置路由器
    本文介绍了如何使用PLEX播放组播、抓取信号源以及设置路由器。通过使用xTeve软件和M3U源,用户可以在PLEX上实现直播功能,并且可以自动匹配EPG信息和定时录制节目。同时,本文还提供了从华为itv盒子提取组播地址的方法以及如何在ASUS固件路由器上设置IPTV。在使用PLEX之前,建议先使用VLC测试是否可以正常播放UDPXY转发的iptv流。最后,本文还介绍了docker版xTeve的设置方法。 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • EPICS Archiver Appliance存储waveform记录的尝试及资源需求分析
    本文介绍了EPICS Archiver Appliance存储waveform记录的尝试过程,并分析了其所需的资源容量。通过解决错误提示和调整内存大小,成功存储了波形数据。然后,讨论了储存环逐束团信号的意义,以及通过记录多圈的束团信号进行参数分析的可能性。波形数据的存储需求巨大,每天需要近250G,一年需要90T。然而,储存环逐束团信号具有重要意义,可以揭示出每个束团的纵向振荡频率和模式。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • Ubuntu安装常用软件详细步骤
    目录1.GoogleChrome浏览器2.搜狗拼音输入法3.Pycharm4.Clion5.其他软件1.GoogleChrome浏览器通过直接下载安装GoogleChro ... [详细]
  • tcpdump 4.5.1 crash 深入分析
    tcpdump 4.5.1 crash 深入分析 ... [详细]
  • 现在比较流行使用静态网站生成器来搭建网站,博客产品着陆页微信转发页面等。但每次都需要对服务器进行配置,也是一个重复但繁琐的工作。使用DockerWeb,只需5分钟就能搭建一个基于D ... [详细]
  • Linuxchmod目录权限命令图文详解在Linux文件系统模型中,每个文件都有一组9个权限位用来控制谁能够读写和执行该文件的内容。对于目录来说,执行位的作用是控制能否进入或者通过 ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • FeatureRequestIsyourfeaturerequestrelatedtoaproblem?Please ... [详细]
  • centos安装Mysql的方法及步骤详解
    本文介绍了centos安装Mysql的两种方式:rpm方式和绿色方式安装,详细介绍了安装所需的软件包以及安装过程中的注意事项,包括检查是否安装成功的方法。通过本文,读者可以了解到在centos系统上如何正确安装Mysql。 ... [详细]
  • 本文介绍了如何在Azure应用服务实例上获取.NetCore 3.0+的支持。作者分享了自己在将代码升级为使用.NET Core 3.0时遇到的问题,并提供了解决方法。文章还介绍了在部署过程中使用Kudu构建的方法,并指出了可能出现的错误。此外,还介绍了开发者应用服务计划和免费产品应用服务计划在不同地区的运行情况。最后,文章指出了当前的.NET SDK不支持目标为.NET Core 3.0的问题,并提供了解决方案。 ... [详细]
author-avatar
可爱爱美女_815
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有