- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我是 Kubernetes 的新手,正在学习。我有一台安装了 Vagrant 的 Windows 8 机器。使用 vagrant 我正在运行 ubuntu 虚拟机,在该虚拟机中我正在运行 3 个 docker 容器。
Vagrant 文件:
Vagrant.configure(2) do |config|
config.vm.box = "test"
config.vm.network "public_network"
config.vm.network "forwarded_port", guest: 8080, host: 8080
config.vm.network "forwarded_port", guest: 50000, host: 50000
config.vm.network "forwarded_port", guest: 8081, host: 8089
config.vm.network "forwarded_port", guest: 9000, host: 9000
config.vm.network "forwarded_port", guest: 3306, host: 3306
config.vm.provider "virtualbox" do |v|
v.memory = 2048
v.cpus = 2
end
config.vm.provider "virtualbox" do |v|
v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
v.customize ["modifyvm", :id, "--natdnsproxy1", "on"]
end
end
Ubuntu 虚拟机中的容器:
root@vagrant-ubuntu-trusty:~/docker-containers# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
dockercontainers_jenkins latest bb1142706601 4 days ago 1.03GB
dockercontainers_sonar latest 3f021a73750c 4 days ago 1.61GB
dockercontainers_nexus latest ddc31d7ad052 4 days ago 1.06GB
jenkins/jenkins lts 279f21046a63 4 days ago 813MB
openjdk 8 7c57090325cc 5 weeks ago 737MB
现在我在同一个虚拟机中安装了 minikube 和 kubectl,如 link 中所述
minikube 版本:
minikube version: v0.24.1
kubectl 版本:
Client Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.1", GitCommit:"3a1c9449a956b6026f075fa3134ff92f7d55f812", GitTreeState:"clean", BuildDate:"2018-01-04T11:52:23Z", GoVersion:"go1.9.2", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.0", GitCommit:"0b9efaeb34a2fc51ff8e4d34ad9bc6375459c4a4", GitTreeState:"clean", BuildDate:"2017-11-29T22:43:34Z", GoVersion:"go1.9.1", Compiler:"gc", Platform:"linux/amd64"}
Minikube 在我的 ubuntu VM 中成功启动。我已经创建了 pod.yml
文件。
apiVersion: v1
kind: Pod
metadata:
name: testsonaralm
labels:
app: sonar_alm
spec:
containers:
- name: alm-sonar
image: dockercontainers_sonar:latest
imagePullPolicy: IfNotPresent
ports:
- containerPort: 9000
使用这个 yml 文件,我在 minikube 中创建了一个 pod
root@vagrant-ubuntu-trusty:~/docker-containers# kubectl create -f test_pod.yml
pod "testsonaralm" created
现在我使用 kubectl
命令创建了一个服务。
root@vagrant-ubuntu-trusty:~/docker-containers# kubectl expose pod testsonaralm --port=9000 --target-port=9000 --name almsonar
service "almsonar" exposed
root@vagrant-ubuntu-trusty:~/docker-containers# kubectl get service
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
almsonar ClusterIP 10.102.86.193 <none> 9000/TCP 10s
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 3d
当我尝试从主机访问 URL 时,出现“网络错误”。
root@vagrant-ubuntu-trusty:~/docker-containers# kubectl describe svc almsonar
Name: almsonar
Namespace: default
Labels: app=sonar_alm
Annotations: <none>
Selector: app=sonar_alm
Type: ClusterIP
IP: 10.101.237.223
Port: <unset> 9000/TCP
TargetPort: 9000/TCP
Endpoints: 172.17.0.1:9000
Session Affinity: None
Events: <none>
root@vagrant-ubuntu-trusty:~/docker-containers# minikube ip
127.0.0.1
当我执行 minikube service almsonar --url
命令时,我得到一个 Empty 响应。所以我删除了该服务并使用修改后的命令创建了一个新服务。
root@vagrant-ubuntu-trusty:~/docker-containers# kubectl expose pod testsonaralm --type=NodePort --name almsonar
service "almsonar" exposed
现在,当我运行 minikube service almsonar --url
命令时,我得到了一个 URL
root@vagrant-ubuntu-trusty:~/docker-containers# minikube service almsonar --url
http://127.0.0.1:31209
root@vagrant-ubuntu-trusty:~/docker-containers# kubectl describe svc almsonar
Name: almsonar
Namespace: default
Labels: app=sonar_alm
Annotations: <none>
Selector: app=sonar_alm
Type: NodePort
IP: 10.101.192.1
Port: <unset> 9000/TCP
TargetPort: 9000/TCP
NodePort: <unset> 30600/TCP
Endpoints: 172.17.0.1:9000
Session Affinity: None
External Traffic Policy: Cluster
Events: <none>
root@vagrant-ubuntu-trusty:~/docker-containers# minikube ip
127.0.0.1
我无法在我的 Ubuntu VM 中访问此 URL,
root@vagrant-ubuntu-trusty:~/docker-containers# curl http://127.0.0.1:31209
<HTML>
<HEAD><TITLE>Redirection</TITLE></HEAD>
<BODY><H1>Redirect</H1></BODY>
当我阅读 Kubernetes 文档时,minikube 服务 URL 将有一个有效的 IP。但在我的例子中,URL 包含本地主机 IP 地址。
最佳答案
据我所知,您在 Ubuntu VM 中执行了 minikube start
。默认情况下,这将尝试下载 minikube ISO 并启动另一个运行 minikube 的 VM(VM 内的 VM)。
我认为这种嵌套虚拟化导致您的安装出现问题。如果,出于某种原因,minikube 以 --vm-driver=none
开始,以避免 VM 内部的 VM(我认为是这种情况,查看 127.0.0.1 UP),有一些处于测试阶段的功能(在撰写此答案时),这可以解释奇怪的行为。因此,我的第一个建议是在 Windows 主机内执行 minikube,以便它在 virtualbox 内启动一个 VM。您可以在其中重现您之前拥有的容器环境,并从 Windows 主机执行 kubectl 命令。大多数文档都采用此设置,因此您不会在本地主机中看到 127.0.0.1 之类的差异。
无论如何,为了进行完全重定向并检查服务是否正在运行,请尝试像这样执行 curl 命令:
curl -L http://127.0.0.1:31209
关于ubuntu - Minikube 服务 URL 无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48398800/
我有一个接受以下参数的函数: int setvalue(void (*)(void *)); 为了满足参数:void (*)(void *),我创建了这样一个函数: static void *
我有以下代码: typedef void VOID; int f(void); int g(VOID); 在 C 中编译得很好(在 Fedora 10 上使用 gcc 4.3.2)。与 C++ 编译的
这个问题已经有答案了: Is f(void) deprecated in modern C and C++? [duplicate] (6 个回答) 已关闭 7 年前。 B.A.T.M.A.N./A.
我在 ASP.NET Core 3.1 项目上有以下 Identity Server 4 配置: services .AddIdentityServer(y => { y.Events.R
我们有一个 O365 租户,一切都是开箱即用的。租户放置在德国云中,而不是全局 (office.de) 中。我们还开发了一个 Office 插件,使用 OAuth 2.0 授权访问共享点。首先,我们向
我有一个如下所示的路由 routes.MapRoute( name: "Default", url: "{controller}/{action}/{i
我正在尝试使用 OAuth2.0 访问 google 文档。我已经从 Google API 控制台获取了客户端 ID 和 key 。但是当我运行这段代码时,我收到了异常。如果我遗漏了什么,有人可以建议
此代码有效: let mut b: Vec = Vec::with_capacity(a.len()); for val in a.iter() { b.push(val); } 此代码不起作
使用 client_credintials 授权类型请求 EWS oauth2 v2.0 的访问 token 时出现错误。 https://login.microsoftonline.com/tena
我通过 Java 应用程序使用 Google 电子表格时遇到了问题。我创建了应用程序,该应用程序运行了 1 年多,没有任何问题,我什至在 Create Spreadsheet using Google
如何创建 匹配所有无效 Base64 字符的正则表达式?我在堆栈上找到了 [^a-zA-Z0-9+/=\n\r].*$ 但是当我尝试时我得到了带有 - 符号的结果字符串.我根本不知道正则表达式,任何人
我从 Gitlab CI/CD Pipelines 获得错误信息:yaml invalid。问题是由 .gitlab-ci.yml 脚本的第五行引起的: - 'ssh deployer@gita
我有 3 个数据源,设置如下: @Configuration @Component public class DataSourceConfig { @Bean("foo") @Conf
你好,我想用bulkCreate ex 插入数据: [ { "typeId": 5, "devEui": "0094E796CBFCFEF9", "application_name": "Pressu
UIApplicationExitsOnSuspend 不会强制我的应用程序退出。我已经清理过目标、删除了应用程序、重建并重新安装了很多次。 我确实需要退出我的应用程序。 最佳答案 您是否链接了 SD
在 iPhone 配置门户上,显示我的 iPhone 团队配置配置文件无效。有一个“由 Xcode 管理”文本。 “续订”按钮被禁用。 我该如何解决这个问题?谢谢 最佳答案 使用 Xcode 3.2.
好的,所以今天我用我们的“实时”数据库中的新信息更新了我的数据库……从那时起,我的一个表格就出现了问题。如果您需要任何代码,请告诉我,我将对其进行编辑并发布所需的代码... 我有一个报告表格,其中有一
我有一个结构体,其中有一个元素表示为 void (*func)(); 我知道 void 指针通常用于函数指针,但我似乎无法定义该函数。我不断收到取消引用指向不完整类型的指针。我用谷歌搜索了一下但没有结
我正在尝试使用 Coldfusion 9 从 ning 网络获取凭证,所以首先这是测试 api 的 curl 语法: curl -k https://external.ningapis.com/xn/
这个问题已经有答案了: Does C have references? (2 个回答) 已关闭 4 年前。 我正在学习 C 语言引用,这是我的代码: #include int main(void)
我是一名优秀的程序员,十分优秀!