首页 文章 精选 留言 我的

精选列表

搜索[计算机基础],共10000篇文章
优秀的个人博客,低调大师

Docker基础之五: 使用Docker容器

使用Docker容器 (对Docker感兴趣的朋友可以加我的微信ghostcloud2016,然后我把你加到我们的一个Docker爱好者群组里面。) 这一节我们将从运行一个简单的Hello world入手,来讲解如何使用容器。 1 运行Hello World root@shev:~# docker run ubuntu:14.04 echo hello-world hello-world root@shev:~# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 0cef7fa7468d ubuntu:14.04 "echo hello-world" 3 seconds ago Exited (0) 2 seconds ago condescending_visvesvaraya 剖析: 本条命令启动ubuntu:14.04版本的镜像,并在其中运行打印hello world的命令; 由于我们的命令是一个简单的语句,并不会持续很长时间,当命令执行完毕时,容器就退出了 因此,我们通过docker ps –a可以看到容器的状态是停止状态 2 运行一个可交互的容器 之前的例子里面,容器在运行完指令后就自动退出了,那么我们可不可以运行一个可交互的容器呢? root@shev:~# docker run -it ubuntu /bin/bash Unable to find image 'ubuntu:latest' locally latest: Pulling from library/ubuntu Digest: sha256:f91f9bab1fe6d0db0bfecc751d127a29d36e85483b1c68e69a246cf1df9b4251 Status: Downloaded newer image for ubuntu:latest root@558531c2b215:/# ll total 72 drwxr-xr-x 32 root root 4096 Dec 2 09:16 ./ drwxr-xr-x 32 root root 4096 Dec 2 09:16 ../ -rwxr-xr-x 1 root root 0 Dec 2 09:16 .dockerenv* -rwxr-xr-x 1 root root 0 Dec 2 09:16 .dockerinit* drwxr-xr-x 2 root root 4096 Oct 28 04:34 bin/ drwxr-xr-x 2 root root 4096 Apr 10 2014 boot/ drwxr-xr-x 5 root root 380 Dec 2 09:16 dev/ drwxr-xr-x 64 root root 4096 Dec 2 09:16 etc/ drwxr-xr-x 2 root root 4096 Apr 10 2014 home/ drwxr-xr-x 12 root root 4096 Oct 28 04:34 lib/ drwxr-xr-x 2 root root 4096 Oct 28 04:33 lib64/ drwxr-xr-x 2 root root 4096 Oct 28 04:33 media/ drwxr-xr-x 2 root root 4096 Apr 10 2014 mnt/ drwxr-xr-x 2 root root 4096 Oct 28 04:33 opt/ dr-xr-xr-x 160 root root 0 Dec 2 09:16 proc/ drwx------ 2 root root 4096 Oct 28 04:34 root/ drwxr-xr-x 7 root root 4096 Oct 28 04:34 run/ drwxr-xr-x 2 root root 4096 Nov 10 00:35 sbin/ drwxr-xr-x 2 root root 4096 Oct 28 04:33 srv/ dr-xr-xr-x 13 root root 0 Dec 2 09:16 sys/ drwxrwxrwt 2 root root 4096 Oct 28 04:34 tmp/ drwxr-xr-x 11 root root 4096 Nov 10 00:35 usr/ drwxr-xr-x 12 root root 4096 Nov 10 00:35 var/ root@558531c2b215:/# ifconfig eth0 Link encap:Ethernet HWaddr 02:42:ac:11:00:02 inet addr:172.17.0.2 Bcast:0.0.0.0 Mask:255.255.0.0 inet6 addr: fe80::42:acff:fe11:2/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:8 errors:0 dropped:0 overruns:0 frame:0 TX packets:8 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:648 (648.0 B) TX bytes:648 (648.0 B) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) 剖析: 本例中,我们在ubuntu:latest镜像中,执行/bin/bash,由于bash本身是一个包含了交互的终端,因此我们可以长时间的运行容器; 但是,我们必须指定-it,同shell的stdiin和stdout绑定起来 进入容器后,我们实际进入了一个shell终端,里面不仅可以访问文件将,还有一个虚拟网卡和IP。这是不是跟一个linux主机是一样的呢? 3 在容器中运行一个后台守护进程 所谓后台守护进程,就是运行在后台,并不会阻塞当前的进程。 在后台运行一个脚本,每隔1秒打印一句hello world: root@shev:~# docker run -d ubuntu:14.04 /bin/sh -c "while true; do echo hello world; sleep 1; done" ba50b5023bb15b50608d855671d40c09690f5b1a956a40e3544acde791e04aa3 查看后台的运行日志: root@shev:~# docker logs ba50 hello world hello world hello world hello world hello world hello world hello world 查看当前正在运行的容器列表: root@shev:~# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES ba50b5023bb1 ubuntu:14.04 "/bin/sh -c 'while tr" 2 minutes ago Up 2 minutes ecstatic_bell e221abf45a0b ghostcloud.cn:5000/gcali:1.2 "/usr/local/ghostclou" 49 minutes ago Up 49 minutes gcsagent 停止指定的容器: root@shev:~# docker stop ba50 ba50 再次查看正在运行的容器: root@shev:~# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES e221abf45a0b ghostcloud.cn:5000/gcali:1.2 "/usr/local/ghostclou" 50 minutes ago Up 50 minutes gcsagent 剖析: 本例中,我们通过-d属性,让容器运行在后台,我们并不进入容器内部 执行完毕后,返回了一个id,该id是容器的id。上面显示的是容器的完整id,但是我们实际操作的时候,一般可以只输入前面几位即可,docker会自动进行匹配 我们通过docker logs来查看容器运行的情况,也就是我们循环打印的日志 由于该容器是长时间运行的,所以我们可以通过docker ps,查看该容器 docker stop则是停止该容器,停止后,我们就看不到该容器了

优秀的个人博客,低调大师

Python基础知识细节点总结,零基础一分钟也能掌握

既然要开始学习Python,那么就首先就得不官网下载个Python,小编使用的是3.6的 安装教程百度经验里面还是很详细的。 那么正题开始吧! 两种格式化输出的方式 第一种是用%操作格式化输出字符串 代码如下: 运行上面的代码输出的结果: 第二种使用format()方法去格式化输出字符串 代码直接一行语句搞定 你运行后发现结果还是一样的! Python中类型的转换 很多初学者在刚开始学习Python的对于数据类型有点弄不清楚,比如: a = 666 这是一个定义a为666,默认是整型 B = '666' 这是也直接定义,然后默认是字符串 在Python中有三个内建的函数可以让我们进行类型转换,他们分别是int(),float()和str()函数 int()函数接收一个浮点型或者合适的字符串 比如:int(3.1415)、int('1314')、int('3.1415') 那么他们的运行结果是不是一样呢? 结果很明显了,int()函数接收一个浮点型或者合适的字符串! float() 函数接收一个整数和一个合适的字符串 比如:float(23),float('3.1415') str( ) 函数是把一个整型或者浮点型的数变为字符串 比如:str(1231)、str(3.1415) 那么对于类型的转换了解了么,可以自己动手亲自去试一试呀 关于列表的一些操作 例如 age = [1,2,3,4,5,6] #其实这里面也可以放不同类型的数据 列表是可以更改的,如进行单个元素的添加及删除。 我们后面将会介绍元组,它是不能修改的。 下面列举一些列表的操作 age[2] =13 age[-1]=23 someage = age[2:4] someage = age[0:5:2] del age[1] age.append('没粉丝的程序狗')

优秀的个人博客,低调大师

曝俄罗斯黑客组织Cozy Bear攻击了美共和党计算机系统

据外媒报道,隶属于Cozy Bear组织的俄罗斯国家黑客是上周针对Synnex的网络攻击的幕后策划者。Synnex是一家为美共和党全国委员会(RNC)提供IT服务的承包商。这次攻击可能泄露了该组织的信息。RNC一位发言人在接受彭博社采访时虽然否认了该组织的系统遭到黑客攻击,但证实其IT供应商之一Synnex已遭到曝光。 RNC就这次攻击发表了以下声明:“上周末,我们被告知第三方供应商Synnex遭到了网络攻击。为此我们立即屏蔽了Synnex帐号对我们云环境的所有访问。我们的团队跟微软合作以对我们的系统进行审查,经过彻底的调查没有RNC数据被访问。我们将继续跟微软及联邦执法官员就此事进行合作。” Synnex则在7月6日发布的一份声明中进一步证实它知道一些外部参与者试图通过Synnex访问微软云环境中的客户应用程序的实例。该公司声称正在跟微软和一家第三方安全公司一起评估这次攻击。据了解,这种操纵跟微软云交互的企业软件而不是直接追踪Azure或Office产品跟SolarWinds在2020年遭遇的黑客攻击有一些相似之处。 这种联系是有道理的:跟俄罗斯对外情报局SVR合作的Cozy Bear成员很大程度上被怀疑为非法目的操纵SolarWinds软件的幕后主使。SolarWinds的入侵可能会暴露100多家公司和政府机构的信息,甚至危及网络安全公司的工具,而这些工具旨在防止此类攻击。 美RNC遭黑客攻击跟民主党全国委员会(DNC)和希拉里·克林顿在2016年总统竞选期间遭遇的黑客攻击之间也存在着相似之处。那次入侵以及维基解密上数千封电子邮件的泄露最终导致俄罗斯军事情报机构GRU的12名成员被起诉。GRU跟另一个受熊类启发的俄罗斯黑客组织Fancy Bear存有关联。 彭博社表示,Cozy Bear的攻击可能是利用了这些勒索软件黑客作为一种掩护,即使他们没有这样做,攻击政治目标仍是一个持续存在的问题并且还不总是以戏剧性的泄露告终。

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册