Docker使用mysql:5.6和 owncloud 镜像,构建一个个人网盘,安装搭建私有仓库 Harbor

news2024/11/15 11:05:19

一、使用mysql:5.6和 owncloud 镜像,构建一个个人网盘。

[root@localhost ~]# docker pull mysql:5.6

[root@localhost ~]# docker pull owncloud

[root@localhost ~]# docker run -itd --name mysql --env MYSQL_ROOT_PASSWORD=123456 mysql:5.6
d45cc5b95f00692881baafcb9f9b47a0696f5e3a77d0efe95c51faec514ccdc0 
[root@localhost ~]# docker run -itd -p 80:80 --name owncloud --link mysql:mysql owncloud 
0974b4918aa18c963385297908c606813ad1d1f264f6c7f2333e7305aae4c816

在网页中输入本机的IP地址

 二、安装搭建私有仓库 Harbor

#安装docker编排工具docker-compose

[root@localhost ~]# mkdir /harbor
[root@localhost ~]# cd /harbor/
[root@localhost harbor]# curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
100 15.4M  100 15.4M    0     0   185k      0  0:01:24  0:01:24 --:--:-- 2270k

#下载Harbor安装包

wget -c https://github.com/goharbor/harbor/releases/download/v2.4.1/harbor-offline-installer-v2.8.4.tgz

#对二进制文件应用可执行权限:

[root@localhost harbor]# chmod +x /usr/local/bin/docker-compose

#测试是否安装成功

[root@localhost harbor]# docker-compose version
docker-compose version 1.24.1, build 4667896b
docker-py version: 3.7.3
CPython version: 3.6.8
OpenSSL version: OpenSSL 1.1.0j  20 Nov 2018
#配置Harbor服务
[root@localhost ~]# tar xf harbor-offline-installer-v2.8.4.tgz -C /usr/local/
[root@node ~]# cd /usr/local/harbor/
[root@node harbor]# ll
total 597560
drwxr-xr-x. 3 root root        20 Aug 25 08:59 common
-rw-r--r--. 1 root root      3639 Aug 15 17:53 common.sh
-rw-r--r--. 1 root root      5836 Aug 25 08:59 docker-compose.yml
-rw-r--r--. 1 root root 611834153 Aug 15 17:54 harbor.v2.8.4.tar.gz
-rw-r--r--. 1 root root     12507 Aug 25 08:57 harbor.yml
-rw-r--r--. 1 root root     12499 Aug 15 17:53 harbor.yml.tmpl
-rwxr-xr-x. 1 root root      2725 Aug 15 17:53 install.sh
-rw-r--r--. 1 root root     11347 Aug 15 17:53 LICENSE
-rwxr-xr-x. 1 root root      1881 Aug 15 17:53 prepare

[root@localhost harbor]# cp harbor.yml.tmpl harbor.yml
[root@localhost harbor]# vim harbor.yml

#添加本地DNS解析

[root@localhost harbor]*# vim /etc/hosts*

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.226.150 node.shenqilun.com
#运行安装脚本
[root@localhost harbor]# ./install.sh
#验证
[root@localhost harbor]# ss -nutlp | grep docker
tcp    LISTEN     0      128    127.0.0.1:1514                  *:*                   users:((docker-proxy",pid=2962,fd=4))
tcp    LISTEN     0      128       *:8080                  *:*                   users:(("docker-proxy",pid=3476,fd=4))
tcp    LISTEN     0      128       *:80                    *:*                   users:(("docker-proxy",pid=2435,fd=4))
tcp    LISTEN     0      128    [::]:8080               [::]:*                   users:(("docker-proxy",pid=3481,fd=4))
tcp    LISTEN     0      128    [::]:80                 [::]:*                   users:(("docker-proxy",pid=2441,fd=4))
[root@localhost harbor]# docker ps
CONTAINER ID   IMAGE                                COMMAND                  CREATED          STATUS                             PORTS                                       NAMES
dfc3d8988784   goharbor/harbor-jobservice:v2.8.4    "/harbor/entrypoint.…"   24 seconds ago   Up 18 seconds (health: starting)                                               harbor-jobservice
87cd82a580d4   goharbor/nginx-photon:v2.8.4         "nginx -g 'daemon of…"   24 seconds ago   Up 21 seconds (health: starting)   0.0.0.0:8080->8080/tcp, :::8080->8080/tcp   nginx
bfbafba66778   goharbor/harbor-core:v2.8.4          "/harbor/entrypoint.…"   24 seconds ago   Up 22 seconds (health: starting)                                               harbor-core
77adcfc5f556   goharbor/redis-photon:v2.8.4         "redis-server /etc/r…"   24 seconds ago   Up 22 seconds (health: starting)                                               redis
84163d4f70e7   goharbor/registry-photon:v2.8.4      "/home/harbor/entryp…"   24 seconds ago   Up 23 seconds (health: starting)                                               registry
eda3f53becbc   goharbor/harbor-registryctl:v2.8.4   "/home/harbor/start.…"   24 seconds ago   Up 22 seconds (health: starting)                                               registryctl
2b58a4509b1d   goharbor/harbor-portal:v2.8.4        "nginx -g 'daemon of…"   24 seconds ago   Up 23 seconds (health: starting)                                               harbor-portal
1d3ed7c4465f   goharbor/harbor-db:v2.8.4            "/docker-entrypoint.…"   24 seconds ago   Up 23 seconds (health: starting)                                               harbor-db
6429fc8e530a   goharbor/harbor-log:v2.8.4           "/bin/sh -c /usr/loc…"   24 seconds ago   Up 24 seconds (health: starting)   127.0.0.1:1514->10514/tcp                   harbor-log
86e0be6129a4   owncloud                             "docker-entrypoint.s…"   10 minutes ago   Up 10 minutes                      0.0.0.0:80->80/tcp, :::80->80/tcp           owncloud
5d7eb2a1b187   mysql:5.6                            "docker-entrypoint.s…"   11 minutes ago   Up 11 minutes                      3306/tcp                                    mysql
[root@localhost harbor]# docker login -u admin -p Harbor12345 1

在网页中输入本机的IP地址加上:8080,用户名admin密码Harbor12345。登录成功页面如下:

三、编写Dockerfile制作Web应用系统nginx镜像,生成镜像nginx:v1.1,并推送其到私有仓库。

(1)基于centos基础镜像;
[root@localhost ~]# docker pull centos:7

(2)指定作者信息;
(3)安装nginx服务,将提供的dest目录(提供默认主页index.html)传到镜像内,并将dest目录内的前端文件复制到nginx的工作目录;
(4)暴露80端口;
(5)设置服务自启动。
[root@localhost ~]# mkdir centos
[root@localhost ~]# cd centos/
[root@localhost centos]# touch index.html
[root@localhost centos]# echo 'Welcon to Nginx' > index.html 
[root@localhost centos]# vim Dockerfile 
FROM centos:7
MAINTAINER "lsq <lsq@163.com>"
RUN yum install wget -y && cd /etc/yum.repos.d/ && rm -rf ./* && \
    wget -0 /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo && \
    wget -0 /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
RUN yum install -y nginx
COPY index.html /usr/share/nginx/html/
EXPOSE 80
CMD ["/usr/sbin/nginx","-g","daemon off;"]

(6)验证镜像。                                          
[root@localhost centos]#  docker build -t nginx:v1 .
[root@localhost centos]# docker run -p 8090:80 --name ng nginx:v1

四、Dockerfile快速搭建自己专属的LAMP环境,生成镜像lamp:v1.1,并推送到私有仓库。

要求如下:
(1)基于centos:6基础镜像;
[root@localhost ~]# mkdir lamp
[root@localhost lamp]#docker pull centos:6

(2)指定作者信息;
(3)安装httpd、mysql、mysql-server、php、php-mysql、php-gd;
(4)暴露80和3306端口;
(5)设置服务自启动。
[root@bogon lamp]#wget -O /root/lamp/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-6.10.repo
[root@localhost lamp]# vim Dockerfile
FROM centos:6
MAINTAINER "longsiqi <longsiqi@163.com>"
ADD CentOS-Base.repo /etc/yum.repos.d/
RUN yum install -y httpd mysql mysqL-server php php-mysqL php-gd && \
    yum clean all && yum makecache
EXPOSE 80
EXPOSE 3306
CMD ["sh", "-c", "service httpd start && service mysqld start && tail -f /var/log/httpd/access_log"]
[root@localhost lamp]# docker build -t lamp:v1.1 .
(6)验证镜像。
[root@localhost lamp]# docker run -p 8060:80 --name lp lamp:v1.1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/931208.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vscode的远程代码调试

目录 ssh连接 xdebug调试 ssh连接 在vscode中下载该插件 这里用虚拟机测试&#xff0c;这里用虚拟机测试&#xff0c;注意ssh是可以连接的 然后安装好remote后&#xff0c;点击左下角的>< 在弹出的这个上选择connect to host连接一台主机 配置完用户名和IP后再点一次发…

<C++>泛型编程-模板

1.泛型编程 如何实现一个通用的交换函数呢&#xff1f;可以使用函数重载 void Swap(int &left, int &right) {int temp left;left right;right temp; }void Swap(double &left, double &right) {double temp left;left right;right temp; }void Swap(c…

ES6中promise的使用

ES6中promise的使用 本文目录 ES6中promise的使用基础介绍箭头函数function函数状态 原型方法Promise.prototype.then()Promise.prototype.catch() 静态方法Promise.all()Promise.race()Promise.any() 链式回调 基础介绍 官网&#xff1a;https://promisesaplus.com/ window.…

数据处理 | Python实现基于DFCP张量分解结合贝叶斯优化的缺失数据填补

数据处理 | Python实现基于DFCP张量分解结合贝叶斯优化的缺失数据填补 目录 数据处理 | Python实现基于DFCP张量分解结合贝叶斯优化的缺失数据填补实践过程基本介绍研究背景程序设计参考资料实践过程 基本介绍 数据处理 | Python实现基于DFCP张量分解结合贝叶斯优化的缺失数据填…

bug复刻,解决方案---在改变div层级关系时,导致传参失败

问题描述&#xff1a; 在优化页面时&#xff0c;为了实现网页顶部遮挡效果&#xff08;内容滚动&#xff0c;顶部导航栏不随着一起滚动&#xff0c;并且覆盖&#xff09;&#xff0c;做法是将内容都放在一个div里面&#xff0c;为这个新的div设置样式&#xff0c;margin-top w…

Android 之 LayoutInflater (布局服务)

本节引言&#xff1a; 本节继续带来的是Android系统服务中的LayoutInflater(布局服务)&#xff0c;说到布局&#xff0c;大家第一时间 可能想起的是写完一个布局的xml&#xff0c;然后调用Activity的setContentView()加载布局&#xff0c;然后把他显示 到屏幕上是吧~其实这个底…

lnmp架构-tomcat session

tomcat session共享 部署 tomcat 在server2 和 server3上进行同样的操作 保存的信息都会在tomcat日志中保存 tomcat 与nginx的整合 在server1上 当并发量开始增大时 就得做负载均衡 解决 当一个tomcat服务器挂掉后 另一个服务器上有第一个服务器上提交的数据问题 在server2…

wx:for的使用和事件传参,解构赋值的应用

在页面的.js文件中创建了一个对象&#xff0c; 并且在页面的view中调用了两种不同的方法将对象中的元素显示出来&#xff01; 第2种代码要加强理解&#xff01;&#xff01;&#xff01; 小程序中的wx:if wx:elif wx:else 其实好像c语言中的 if-elif-else 在页面的.j…

【大数据】图解 Hadoop 生态系统及其组件

图解 Hadoop 生态系统及其组件 1.HDFS2.MapReduce3.YARN4.Hive5.Pig6.Mahout7.HBase8.Zookeeper9.Sqoop10.Flume11.Oozie12.Ambari13.Spark 在了解 Hadoop 生态系统及其组件之前&#xff0c;我们首先了解一下 Hadoop 的三大组件&#xff0c;即 HDFS、MapReduce、YARN&#xff0…

Linux 内核定时器

一、相关知识点 (一)知识点 1、内核定时器分类 1)标准定时器或系统定时器 2)高精度定时器(HRT) 头文件:#include <linux/hrtimer.h> 2、检查系统是否可用HRT 1)查看内核配置文件 CONFIG_HIGH_RES_TIMERS=y 2)查看机器 …

Vue2向Vue3过度Vuex核心概念module模块

目录 1 核心概念 - module1.目标2.问题3.模块定义 - 准备 state 2 获取模块内的state数据1.目标&#xff1a;2.使用模块中的数据3.代码示例 3 获取模块内的getters数据1.目标&#xff1a;2.语法&#xff1a;3.代码演示 4 获取模块内的mutations方法1.目标&#xff1a;2.注意&am…

js实现数据关联查找更新。数据求和验证

为了实现这个功能我们和后端定义了数据结构 data:{id&#xff1a;‘’&#xff0c;formInfo:,formInfo2:,formInfo3:,formInfo4:, ......deailData:[ // 明细数据 // saleData 查询带出的对应明细序列号数据{ id:, ocopyId:, copyId:, odoId:, ......, saleData:[ { id:, oc…

unity-AI自动导航

unity-AI自动导航 给人物导航 一.地形创建 1.首先我们在Hierarchy面板中创建一个地形对象terrian&#xff0c;自行设定地形外貌&#xff0c;此时我们设置一个如下的地形外观。 二.创建导航系统 1.在主人公的Inspector、面板中添加Nav Mesh Agent &#xff08;导航网格代理&…

【Linux】手把手教你实现udp服务器

网络套接字~ 文章目录 前言一、udp服务器的实现总结 前言 上一篇文章中我们讲到了很多的网络名词以及相关知识&#xff0c;下面我们就直接进入udp服务器的实现。 一、udp服务器的实现 首先我们需要创建五个文件(文件名可以自己命名也可以和我一样)&#xff0c;分别是makefile…

Unity3d C#实现调取网络时间限制程序的体验时长的功能

前言 如题的需求应该经常在开发被提到&#xff0c;例如给客户体验3–5天的程序&#xff0c;到期后使其不可使用&#xff0c;或者几年的使用期限。这个功能常常需要使用到usb加密狗来限制&#xff0c;当然这也的话就需要一定的硬件投入。很多临时提供的版本基本是要求软件来实现…

Java如何将jar包上传到Maven中央仓库(超详细2023最新版)

文章目录 Java如何将jar包上传到Maven中央仓库引言Step1&#xff1a;注册 JIRA 账号Step2&#xff1a;发布申请Step3&#xff1a;下载并安装GPGStep4&#xff1a;配置maven的setting.xmlStep5&#xff1a;配置pom.xmlStep6&#xff1a;上传 jar 包Step7&#xff1a;引入 jar 包…

SwiftUI 中限制任意视图为指定的屏幕旋转方向

功能需求 在 SwiftUI 开发中,我们有时需要限制 App 中某些视图为特定的屏幕旋转方向,而另一些视图不做限制(或做其它限制),这可以做到吗? 如上图所示:我们成功的限制了 SwiftUI 中不同视图对应于不同的屏幕旋转方向(Interface Orientations)。 在本篇博文中,您将学到…

OpenCV - C++实战(01) — OpenCV简介

目录 第1章 OpenCV简介 1.1 简介 1.1.1 OpencV 库简介 1.1.2 命名空间 1.2 OpenCV模块 1.3 装载、显示和存储图像 1.3.1 创建图像 1.3.2 读取图像 1.3.3 定义窗口与显示图像 1.3.4 图像翻转 1.3.5 保存图像 1.3.6 图像的复制 1.3.7 创建数组和向量 1.…

01、前端使用 thymeleaf 后,视图页面找不到---Cannot resolve MVC View ‘xxxxx前端页面‘

Cannot resolve MVC View ‘xxxxx前端页面’ 没有找到对应的mvc的前端页面。 代码&#xff1a;前端这里引入了 thymeleaf 模板 解决&#xff1a; 需要添加 thymeleaf 的依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>s…

APP调用bindService的跨进程调用过程

app执行bindService时会经过如下8次跨系统进程调用过程&#xff1a; 第1步&#xff1a;通过AMS.getService跨进程调用 第2步&#xff1a;AMS返回它的IBinder 第3步&#xff1a;通过AMS的IBinder调用AMS的bindService方法 第4步&#xff1a;而AMS存放有Server端的IBinder&…