前言 最近使用树莓派时,使用apt-get指令安装一些软件包总会出现各种各样的问题,更新升级总是报错,要不就是缺少这个库、要么就是依赖那个包,总之就是无穷无尽的循环。...apt-get需要正确的方式更新和升级。...那么最好的解决办法就是更换国内的源。国内有很多机构开放了软件镜像源给开发者免费使用,如阿里、科大、清华等等 ?...下面就以清华源为例说一下如何更换正确的源的方法 方法 树莓派更新apt-get的源列表在/etc/apt/sources.list 直接用nano编辑器打开它 sudo nano /etc/apt/sources.list...因为Raspbian的仓库中除了apt-get软件源还包含其他代码。apt-get软件源不在仓库的根目录,而在raspbian/子目录下。 4.
我们使用Docker以Ubuntu作为模板制作镜像的时候,Dockerfile 中使用到 RUN yum xxx的时候提示错误: /bin/sh: 1: yum: not found 如下图: 错误原因可能是...Ubuntu镜像的不带有yum命令。...然后才可以使用。...FROM ubuntu MAINTAINER kaigejava ENV MYPATH /usr/local WORKDIR $MYPATH RUN apt-get... update RUN apt-get upgrade RUN apt-get install build-essential RUN apt-get install yum RUN yum -y install
当使用apt-get安装mysql后,ubuntu会自动生成一个用户名和密码。...所以在第一次登陆时会报如下错误 ERROR 1045 (28000): Access denied for user 'db'@'localhost' (using password: NO) 而真正的用户名和密码在
控制端使用yum install docker安装完成docker后启动docker失败,出现以下信息: Job for docker.service failed because the control...当时我就蒙了,我就按照提示systemctl status docker.service然后控制端出现以下信息: 我发现这好像是由于docker不支持图像内核驱动:SELinux不支持这个内核上的OrthALA2...图形驱动程序 重新编辑docker配置文件: vi /etc/sysconfig/docker # /etc/sysconfig/docker # Modify these options if you...--signature-verification=false‘ if [ -z "${DOCKER_CERT_PATH}" ]; then DOCKER_CERT_PATH=/etc/docker...fi 最后重新编译:systemctl restart docker 成功了!
前几天构筑开发环境,使用了一些docker命令,随手记下来。...经常使用的命令(bash>开头的操作为容器中,其他的均是在宿主机器上)# 下载rhel8的镜像文件docker pull roboxes/rhel8 #获取镜像docker images.../7/x86_64/stable/gpgcheck=0windows图片开始使用搜索镜像仓库。...拉取镜像dokcer pull heartu41/oracle19c拉取可能会失败,失败后选取其他仓库。...ps -ef | grep postgresql解决方法如下:apt-get update && apt-get install procps其他参考资料windows上安装Docker参考该网址:https
解决docker-compose启动镜像失败的问题; 原文地址:http://blog.csdn.net/boling_cavalry/article/details/79050451 正常的docker...run启动 **java:8u111-jdk**是java官方镜像,如下命令可以成功启动一个该镜像的容器: docker run --name test001 -idt java:8u111-jdk...以上命令创建的容器,可用docker exec -it test001 /bin/bash进入容器,执行我们所需的操作; docker-compose启动失败 这里写个最简单的docker-compose.yml...Exited (0) About a minute ago,也就是说虽然创建了容器,但是该容器并未正常运行; 控制终端缺失 启动失败是因为缺失了控制终端的配置,这里有两种方式修复; 使用tty参数(推荐使用...exec重新创建容器(不推荐) 这种方式并不推荐,因为这样做虽然可以启动容器,但是只能重新创建一个容器,具体方法如下: 使用docker-compose up -d命令启动后,由于没有tty:true的配置
写在前面 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。...容器是完全使用沙箱机制,相互之间不会有任何接口 安装 目前,大多数linux系统已经包含docker的软件源,所以只需要一句命令安装完事,这里以centos为例 yum install docker-ce.../bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash 然后键入了exit是退出容器内shell 如何查看运行了哪些docker 键入docker...ps 即可查看正在运行的docker 如何再次进入ubuntu的终端 我们键入docker attach 容器ID 容器的ID我们用docker ps即可看见 exit又可以切回宿主机 如何删除镜像 我们使用...(移除对应服务) sudo docker ps (查看正在运行的服务) sudo docker image ls (查看已经下载的镜像) sudo docker image rm ...
在云服务器上部署 docker 下安装 Redis 容器,服务器系统是 centOS 8.0 64 位、Docker 20.10.12 我在 docker 上部署 Redis 的过程如下: #1.拉取最新的...redis 镜像文件 docker pull redis:latest #2.1在云服务器中创建文件夹 /data/redis、/data/redis/data #2.2从官网上下载 Redis 配置文件...,修改该文件的配置,并将修改后的 redis.conf 上传到服务器中的 /data/redis 目录中 #3 启动redis docker run -p 6379:6379 --name redis...然而查看 docker 的线程也看不到 redis 在 portainer 中 redis 容器也显示 stopped 查看 redis 的容器日志发现也没有其他问题,在网上找了一圈,发现是 docker...我看了一下我的redis.conf 文件配置,发现 daemonize 这个参数后面确实是 yes 。改为 no 后关闭以守护线程的方式启动。redis 容器正常运行。
在 Debian 和 Ubuntu 下运行 apt-get update 刷新更新源的时候,经常遇到 “There is no public key available for the following...key IDs” 的问题,具体表现为以下错误提示: W:There is no public key available for the following key IDs: 3B4FE6ACC0B21F32...apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 3B4FE6ACC0B21F32 把 3B4FE6ACC0B21F32 替换为你出现问题的IDs
添加Docker官方APT镜像源(Debian Linux) 由于Docker官方源使用的时HTTPS,要添加HTTPS传输的软件包和CA证书 操作如下: sudo apt-get install...update apt-get install docker-engine 修改GRUB引导文件 当Docker 容器启动参数添加一些限制时(如内存,CPU),会有警告不支持,因为内核启动时没有这个参数的支持...docker-containerd Containerd是一个简单的守护进程,它可以使用runC管理容器,使用gRPC暴露容器的其他功能。...相比较Docker引 擎,使用gRPC,containerd暴露出针对容器的增删改查的接口,然而Docker引擎只是使用full-blown HTTP API接口对Images、Volumes、network...制作自己的 Docker Image 制作文件系统 a) 使用initramfs命令制作一个虚拟文件系统或者直接使用/boot 里面的initrd文件系统 b) 将文件系统打包为tar格式,
docker重启发现出现如下信息: time="2020-02-27T22:22:23.175963637+08:00" level=info msg="libcontainerd: new containerd...new containerd process, pid: 32256" time="2020-02-27T22:22:37.674366223+08:00" level=fatal msg=EOF 表明docker...在不断的重启容器,但是启动失败,应该是容器信息损坏了,删掉/var/run/docker/libcontainerd/containerd/xxxx,对应的信息,然后再试着重启,就可以解决了.
docker-ce-cli containerd.io Ubuntu 安装 由于apt官方库里的docker版本可能比较旧,所以先卸载可能存在的旧版本 sudo apt-get remove docker...docker-engine docker-ce docker.io 更新apt包索引 sudo apt-get update 安装以下包以使apt可以通过HTTPS使用存储库(repository)...-cs) stable" 再更新一下apt包索引 sudo apt-get update 安装最新版本的Docker CE sudo apt-get install -y docker-ce docker-ce-cli...指定容器名字,后续可以通过名字进行容器管理,links特性需要使用名字 --net="bridge" 容器网络设置:bridge 使用docker daemon指定的网桥,host...//容器使用主机的网络,container:NAME_or_ID >//使用其他容器的网路,共享IP和PORT等网络资源,none 容器使用自己的网络(类似--net=bridge),但是不进行配置
2.* 版本开始的docker-compose下载链接比之前1.* 版本的链接地址中,版本号前面多了一个字母v。...新版本安装命令如下: curl -L "https://github.com/docker/compose/releases/download/v2.12.1/docker-compose-$(uname...-s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose 对比一下旧版本命令...: curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname...-m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose
官网:https://www.docker.com/products/docker-desktop/下载对应版本的软件,安装:图片将 K8s Enable,经过一段时间后,k8s 就安装完成:重新打开终端...,查看当前命名空间下的 pod 信息:kubectl get pods -n kube-system图片Lens 的网站 https://github.com/lensapp/lens图片
在项目根目录下编写docker-compose.yml文件,这个是Compose使用的主模板文件。...docker-compose命令的基本的使用格式是: docker-compose [-f=...] [options] [COMMAND] [ARGS...]...默认情况下,docker-compose将对不同的服务输出使用不同的颜色来区分。可以通过--no-color来关闭颜色。...或者使用version:'2'和更高版本的docker-compose.yml直接定义自定义网络并使用。 network_mode 设置网络模式。...使用和docker run的--network参数一样的值。
Version 1 看到这个问题的第一刻,我想到的是文件夹没有后缀名,其他文件有后缀名,而拥有后缀名则意味着文件名称里面会有.的存在,我们就可以利用这个差别,来区分两者,进而实现问题描述中的功能。...接着,我又发现了文件夹和普通文件的另外一个区别,也就是文件夹是可以使用os.chdir("file_name")这个命令的,而普通文件则显然不行,会出现异常。...Version 2.1 使用os.walk()函数实现同样功能的另外一种写法: import os for roots, dirs, files in os.walk('H:\\学习代码\\test'...问题2 问题描述:我们如何做到删除一个文件夹中的空白文件夹,而不删除其他文件呢? ? 可以看出,问题2是问题1的进阶版本,只需要在问题1的代码基础上,增加一个判断文件夹是否空白的语句即可。...使用os.walk()函数实现同样功能的另外一种写法: for roots, dirs, files in os.walk('H:\\学习代码\\test'): for dir in dirs:
去年初夏,我的同事Zac,也是公司的CEO,向我求助如何构建一个现代化且任何东西都不安装的云托管平台。我回想自己以往的主要从业经历,包括构建,支持和使用可扩展的基础设施的经历,不禁犯起了嘀咕。...另外,我是Docker的早期用户,Docker是应用容器引擎,这种容器支持的部署方案会使高质量的物理裸机在运维工作方面更加给力。...Voxel是被Internap收购的一款云主机托管平台,我们在使用的时候部署了很多自己的程序,在这过程中既看到了带来的好处,又体验了自己拥有软件平台的感觉。...而美国时间2014年10月16日,OpenStack的一个重要的版本,Juno版也正式发布了。 所以我觉得应该使用OpenStack来为公司的物理服务器进行部署。...有时现存的东西并不一定是最好的,也不一定能满足自己的需要。我们使用OpenStack部署packet.net的过程就完全说明了这个道理。
一个看起来简单的需求前段时间要部署一个Java项目,项目本身用Docker容器化,需要连接另一台服务器上的Elasticsearch做数据查询。我心想这有什么难的?...但是Docker容器就是不行。这说明问题出在Docker的网络配置上。找到问题根源我开始怀疑是Docker的网络设置有问题。...检查了一下Docker网络:# 查看Docker网络docker network ls# 查看默认bridge网络详情docker network inspect bridge网络配置看起来都正常,容器也分配到了正确的...Docker网络的一些理解这次踩坑让我对Docker网络有了更深的认识:1. IP转发是基础Docker的bridge网络完全依赖Linux的IP转发功能。...所以Docker网络配置这块,还是要多了解一些原理,出问题的时候才能快速定位。建议:如果你也在用Docker部署应用,记得检查一下IP转发设置,这是个很基础但很关键的配置!
前言 近日想要在我的云服务器上安装graphviz时,发现我的根目录盘满了(直到现在也是快满的状态,服务商说根目录无法扩容) 于是通过逐层执行du -h --max-depth=1,我着手删除了一些比较占磁盘空间的文件...并且顺手扩容了这台云主机的磁盘,reboot了一下, 然后我发现我的docker没有正常地自动启动,尝试手动启动也失败了 需要了解的词 systemctl 用于控制systemd服务,类比k8s中的...# systemctl start docker Failed to get D-Bus connection: Operation not permitted 不多废话直接Google,但按大家描述的场景都是在...docker容器内使用systemctl时出现的这种情况 具体原因是systemd是需要特权(CAP_SYS_ADMIN)去访问Linux内核的;而容器并不是一个完整的操作系统,只有一个文件系统,并且默认启动的容器只是普通用户.../run/lock 同步下更改,然后重启服务器: # sync; sync # reboot 验证docker服务状态: 至此一切恢复岁月静好 总结 以此契机深入了解了systemd服务,并且,不要乱删文件
// 删除软件包, 同时删除为满足依赖 // 而自动安装且不再使用的软件包 apt-get --purge...autoremove PackageName // 删除软件包, 删除配置文件, // 删除不再使用的依赖包 apt-get...clean && apt-get autoclean // 清除 已下载的软件包 和 旧软件包 3....apt-get dist-upgrade // 更新已安装的软件包(识别并处理依赖关系的改变) 4....remove - 卸载软件包 autoremove - 卸载所有自动安装且不再使用的软件包 purge - 卸载并清除软件包的配置 source - 下载源码包文件 build-dep