1. > 生活百科 >

centos8安装docker Centos8安装docker

docker 安装和启动 nacos

linux centos8:

docker:

# docker search nacos

# docker pull nacos/nacos-server

# docker images

docker run -d -e prefer_host_mode=127.0.0.1 -e MODE=standalone -v /nacos/logs:/opt/software/nacos/logs -p 8848:8848 --name nacos --restart=always nacos/nacos-server

参数详解:

查看docker已经启动的容器:

# docker ps # 如要查看所有容器,增加参数 -a

防火墙开放 8848 端口:

查看防火墙某个端口是否开放

# firewall-cmd --query-port=8848/tcp

用户名/密码:nacos/nacos

参考: (9条消息) Docker中安装Nacos_生于冬热爱架构的博客-CSDN博客

CentOS8的podman容器

笔者在使用CentOS8时安装docker失败,于是发现CentOS8自带容器podman,podman的使用方法和docker类似,命令行基本相同。同时和docker相比,podman是无守护程序容器引擎( Daemonless ),不能通过守护进程去实现自动重启容器的功能,可以通过Systemd守护进程管理来开机启动容器。同时,podman也不需要sudo访问( Rootless )。

podman来运行nginx容器,命令和docker一样,而且笔者使用的是docker的官方镜像

1、podman搜索镜像,有registry.redhat.io和docker.io可以选择。

podman search nginx

2、podman拉取镜像

podman pull

3、查看镜像

podman images

4、运行容器,映射到宿主机8080端口。

podman run -itd --name podman-nginx -p 8080:80

需要注意的是,笔者使用的是centos8,映射到小于1024端口时会提示错误:Error: failed to expose ports via rootlessport: "cannot expose privileged port 80, you might need to add \"net.ipv4.ip_unprivileged_port_start=0\" (currently 1024) to /etc/sysctl.conf, or choose a larger port number (>= 1024): listen tcp 0.0.0.0:80: bind: permission denied\n" 。

这时需要选择一个大于等于1024的端口可以方便的解决。再次运行前需要将运行失败的容器删除podman rm podman-nginx ,不然会提示错误。

5、进入容器

podman exec -it podman-nginx bash

进入到nginx的根目录:/usr/share/nginx/html,可以找到index.php文件。

6、查看容器运行成功

怎么设置nginx容器开机启动呢?可以参考文章-Systemd添加.service服务并设置开机启动。

1、在/usr/lib/systemd/system目录下新建podman_nginx.service

[Unit]

Description=Podman Nginx Service

After=network.target

[Service]

Type=simple

ExecStart=/usr/bin/podman start -a podman-nginx

ExecStop=/usr/bin/podman stop -t 10 podman-nginx

Restart=always

[Install]

WantedBy=multi-user.target

2、systemctl enable设置开机启动

systemctl enable podman_nginx.service,激活开机启动

systemctl enable --now podman_nginx.service ,可以激活开机启动并启动服务。

在/etc/systemd/system/multi-user.target.wants/目录下可以看到这个链接文件。

在CentOS中自动安装Docker的命令行是什么?

怎么可能自动安装呢?除非下载已有docker的镜像。好像必须得自己手动安装吧,就相当于安装一个命令一样,yum -y install docker,然后再下载docker镜像,比如安装nginx,再启动镜像

Podman 执行参数与命令

Centos 8 , 当你使用 yum install docker 的时候,会发现安装的是 podman-docker,因为centos8 默认使用 podman 替换了原来的 docker 管理器 , 如果还是想装 docker,可以看这里《 CentOS8 YUM 安装 Docker 》

其实 Centos8 的 podman-docker 使用的其实还是 docker 的内核,所以docker原来大部份的命令,还是可以使用

在/usr/lib/systemd/system目录下新建 文件名.service 文件

docker 搭建es+es基本使用

环境centos8/docker

运行容器

es配置文件添加跨域信息

安装es-head可视化插件

安装kibana

ES可视化界面:访问

kibana指令操作界面:

工具:kibana

1、创建索引并添加数据

PUT /test/type1/2

{

"name":"测试",

"count":8

}

没有指定字段类型的es会默认匹配类型

2、创建索引

PUT /tests

{

"mappings": {

"properties": {

"name":{

"type": "text"

},

"age":{

"type": "integer"

},

"birthday":{

"type": "date"

}

}

}

}

1、精确查询

2、排序

5、过滤范围

通过filter过滤【gt >; gte>=; lt< ;lte<=】

1、docker安装es

2、常用sql转成es语句

3、es支持数据类型

4、eshead数据预览无法显示结构

5、es视频--推荐

如何在CentOS6.5系统中安装Docker

上海蓝盟为您解答

1.为centos配置yum源, 可以使用网易、aliyun或sohu的

2. 配置epel源

/etc/yum.repos.d/epel.repo

[epel]

name=Extra Packages for Enterprise Linux 6 - $basearch

baseurl=

failovermethod=priority

enabled=1

gpgcheck=0

注: 选择其他的epel源也可以

3. 使配置生效

yum clean all

yum makecache

三 安装docker并启动

A)安装

Yum install docker-io

B)启动

Service dokcer start

C)检查

Ps aux |grep docker ,查看是否有 "/usr/bin/docker -d"进程存在

执行Docker images 没有报错

D) 把dokcer的数据目录转移到大的磁盘分区上, 不是必须的,视自己的机器分区而定

Service docker stop

Mkdir /data/dockerData/

Mv /var/lib/docker /data/dockerData/

ln -s /data/dockerData/docker /var/lib/dockerService docker start

Service docker start

四 搭建docker私有仓库并制作centos镜像

1. 搭建docker私有仓库

安装并启动

Yum install docker-registry

修改配置

把/var/lib/docker-registry 软连接到

大的磁盘分区, 不是必须的,视自己的机器分区而定

修改配置/etc/sysconfig/docker-registry, 只监听内网的5000端口

修改配置/etc/docker-registry.yml 中search_backend和

sqlalchemy_index_database,修改目的是可以通过 curl

"x.x.x.x:5000/v1/search?q=xxx" 查询仓库镜像。

#search_backend: _env:SEARCH_BACKEND

search_backend: sqlalchemy

#sqlalchemy_index_database: _env:SQLALCHEMY_INDEX_DATABASE:sqlite:////tmp/docker-registry.db

sqlalchemy_index_database: sqlite:////tmp/docker-registry.db

启动

Service docker-registry restart

检查下端口5000是否启动起来 netstat -ntlp

2. 制作centos镜像

这一步不是必须的,可用如下方案替换:

1)从docker的官方镜像库拉取contos的镜像,

然后再import到自己搭建的私有仓库。但docker的官方镜像库被墙了,需要自备梯子。

2)Docker官方镜像的临时解决方案

使用 下载 Docker 官方镜像的临时解决方案

除了上述两种方案, 这里讲如何定制自己centos镜像,仅供测试docker使用。

A) 安装软件

yum -y install febootstrap

B)下载镜像

centos8安装docker Centos8安装dockercentos8安装docker Centos8安装docker


febootstrap -i bash -i wget -i yum -i iputils -i iproute -i man -i vim-minimal -i openssh-server -i openssh-clients centos6 centos6-image

C) 生成镜像

cd centos6-image && tar -c . |docker import - xxx/centos-base

查看镜像是否已经有xxx/centos-base

docker images

D) 运行测试

测试镜像是否正常

docker run -i -t xx/centos-base /bin/bash

E) 把制作的镜像添加到私有的docker仓库

Docker image 获取IMAGE ID

使用私有的docker仓库的ip:端口给该镜像打tag

docker tag 1920ceab1c8b xx.xx.xx.xx:5000/xxx/centos-base

推送该镜像到仓库

docker push xx.xx.xx.xx:5000/xxx/centos-base

F) 在另一台机器上可以拉取该镜像并运行 docker pull

xx.xx.xx.xx:5000/xxx/centos-base

docker images

docker run -t -i xx.xx.xx.xx:5000/xxx/centos-base /bin/bash

五 简单测试

1. 从私有仓库拉取镜像

Docker pull xx.xx.xx.xx:5000/xxx/centos-base

查看镜像ID

docker images

根据ID给该镜像起一个简短名字

Docker tag 1920ceab1c8b xxx/centos-base

运行一个简单的container, 并把container ID传给变量JOB, 后续操作都依赖于该container ID

JOB=$(docker run -d xxx/centos-base /bin/bash -c "while true; do /bin/echo Hello world; /bin/sleep 1; done")

查看container 是否正常启动

centos8安装docker Centos8安装dockercentos8安装docker Centos8安装docker


Docker ps

查看运行日志

centos8安装docker Centos8安装dockercentos8安装docker Centos8安装docker


Docker logs $JOB

停止进程

Docker stop $JOB

查看container 是否已停止

Docker ps

Centos8 安装启用Docker 服务

参考文档地址:

一、卸载旧版本docker及其依赖项

二、设置存储库

三、安装docker服务

四、启用docker服务

五、设置服务自启

六、可能遇到问题

Problem: package docker-ce-3:20.10.0-3.el7.x86_64 requires containerd.io >= 1.4.1, but none of the providers can be installed

先安装containerd.io,版本不低于1.4.1

Problem: problem with installed package podman-2.0.5-5.module_el8.3.0+512+b3b58dca.x86_64

卸载podman

Problem: problem with installed package buildah-1.15.1-2.module_el8.3.0+475+c50ce30b.x86_64

或者

try to add '--allowerasing' to command line to replace conflicting packages or '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages

可能一些依赖包冲突,需要覆盖安装。 原先命令后增加 --allowerasing

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, website.service08@gmail.com 举报,一经查实,本站将立刻删除。

联系我们

工作日:9:30-18:30,节假日休息