我在春季启动中创建了一些服务,我有11个胖jar,并将它们部署在docker容器中,我的怀疑是每个jar都消耗了1到1.5 GB的RAM,而没有任何使用,我通过运行以下命令检查RAM:
docker stats containername
Run Code Online (Sandbox Code Playgroud)
起初我以为是Java容器,所以我尝试更改为使用alpine的容器,但没有任何变化,所以我认为唯一的问题是我的jar。有没有办法更改jar正在使用的RAM?还是这种行为是正常的,因为每个jar都有一个嵌入式的tomcat?或者将一些罐子放在一起作为战争来部署,并在一组“罐子”中仅使用一个tomcat更好?有人可以分享他/她的经验吗?,
提前致谢。
我正在尝试使用默认用户和密码创建rabbitmq docker 容器,但是当我尝试输入管理插件时,这些凭据不起作用
这就是我创建容器的方式:
docker run -d -P --hostname rabbit -p 5009:5672 -p 5010:15672 --name rabbitmq -e RABBITMQ_DEFAULT_USER=user -e RABBITMQ_DEFAULT_PASS=pass -v /home/desarrollo/rabbitmq/data:/var/lib/rabbitmq rabbitmq:3.6.10-management
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?,
提前致谢
我启动了一个应用程序,向客户展示我的产品,我需要向他们展示产品图片,所以我开始了解如何使用谷歌云,我阅读了一些有关文件存储的内容,但我不确定这是否是最佳解决方案我,我也不明白谷歌对该服务的收费方式,在此链接中解释说,每月 1GB 将向我收取 0.20 美分,有人可以向我解释一下吗?,对此有更好的解决方案吗?,
提前致谢。
我创建了一个有角度的项目,向其中添加了引导程序,但是我注意到新版本的bootstrap(版本4)没有图标库,因此我使用以下命令进行安装:
npm install open-iconic
Run Code Online (Sandbox Code Playgroud)
但是我不知道如何将其添加到我的项目中,根据网页,我需要添加以下两行:
<link href="/open-iconic/font/css/open-iconic-bootstrap.css" rel="stylesheet">
<span class="oi oi-icon-name" title="icon name" aria-hidden="true"></span>
Run Code Online (Sandbox Code Playgroud)
所以我尝试在angular-cli.json上添加css的路径,但是我的按钮没有显示图标,有人可以帮我吗?,
提前致谢。
我创建了一个Spring Boot应用程序,我有授权和资源服务器,这是我的主要类:
@SpringBootApplication
@EnableResourceServer
@EnableAuthorizationServer
public class OauthServerApplication {
public static void main(String[] args) {
SpringApplication.run(OauthServerApplication.class, args);
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的application.yml:
security:
user:
name: guest
password: guest123
oauth2:
client:
client-id: trustedclient
client-secret: trustedclient123
authorized-grant-types: authorization_code,refresh_token,password
scope: openid
Run Code Online (Sandbox Code Playgroud)
要生成访问令牌,我只执行此URL(POST):
http://trustedclient:trustedclient123@localhost:8080/oauth/token?username=guest&password=guest123&grant_type=password
Run Code Online (Sandbox Code Playgroud)
它返回:
{
"access_token": "f2e722b7-3807-4a27-9281-5b28b7bd3d0d",
"token_type": "bearer",
"refresh_token": "f96d472c-8259-42e2-b939-4963dfeeb086",
"scope": "openid"
}
Run Code Online (Sandbox Code Playgroud)
现在我需要知道如何验证令牌是否正确,任何帮助?
我尝试为我的 kafka 集群添加安全性,我遵循了文档:
我使用以下命令添加用户:
kafka-configs.sh --zookeeper zookeeper1:2181 --alter --add-config 'SCRAM-SHA-256=[password=admin-secret],SCRAM-SHA-512=[password=admin-secret]' --entity-type users --entity-name admin
Run Code Online (Sandbox Code Playgroud)
我修改server.properties:
broker.id=1
listeners=SASL_PLAINTEXT://kafka1:9092
advertised.listeners=SASL_PLAINTEXT://kafka1:9092
sasl.enabled.mechanisms=SCRAM-SHA-256
sasl.mechanism.inter.broker.protocol=SCRAM-SHA-256
security.inter.broker.protocol=SASL_PLAINTEXT
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
default.replication.factor=3
min.insync.replicas=2
log.dirs=/var/lib/kafka
num.partitions=3
num.recovery.threads.per.data.dir=1
offsets.topic.replication.factor=3
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
log.retention.hours=168
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
zookeeper.connect=zookeeper1:2181,zookeeper2:2181,zookeeper3:2181/kafka
zookeeper.connection.timeout.ms=6000
group.initial.rebalance.delay.ms=0
Run Code Online (Sandbox Code Playgroud)
创建了 jaas 文件:
KafkaServer {
org.apache.kafka.common.security.scram.ScramLoginModule required
username="admin"
password="admin-secret"
};
Run Code Online (Sandbox Code Playgroud)
在/etc/profile.d中创建文件kafka_opts.sh:
export KAFKA_OPTS=-Djava.security.auth.login.config=/opt/kafka_2.12-2.5.0/config/kafka_server_jaas.conf
Run Code Online (Sandbox Code Playgroud)
但是当我启动kafka时,它会抛出以下错误:
[2020-05-04 10:54:08,782] INFO [Controller id=1, targetBrokerId=1] Failed authentication with kafka1/kafka1 (Authentication failed during authentication due to invalid credentials with SASL mechanism SCRAM-SHA-256) (org.apache.kafka.common.network.Selector)
Run Code Online (Sandbox Code Playgroud)
我使用每个服务器各自的IP而不是kafka1,kafka2,kafka3,zookeeper1,zookeeper2和zookeeper3,有人可以帮助我解决我的问题吗?
我正在创建一个带有 -v 选项的 rabbitmq 容器来添加一个卷,奇怪的是,如果我不添加 --hostname 容器将无法获取卷的信息,例如:
我创建了一个这样的卷:
docker volume create --name rabbit
Run Code Online (Sandbox Code Playgroud)
后来我验证该卷已创建
docker volume ls
Run Code Online (Sandbox Code Playgroud)
然后我像这样创建容器:
docker run --name rabbitprueba -P -p 55555:15672 -d -v rabbit:/var/lib/rabbitmq rabbitmq:3.6.10-management
Run Code Online (Sandbox Code Playgroud)
我输入 localhost:55555 并输入用户名和密码,然后创建一个简单的队列,返回我的机器并停止并移除容器:
docker stop rabbitprueba
docker rm rabbitprueba
Run Code Online (Sandbox Code Playgroud)
当我运行相同的命令时:
docker run --name rabbitprueba -P -p 55555:15672 -d -v rabbit:/var/lib/rabbitmq rabbitmq:3.6.10-management
Run Code Online (Sandbox Code Playgroud)
我创建的队列消失了,但如果我重复相同的步骤(停止容器并删除它)并将 --hostname 添加到命令中,队列不会被删除:
docker run --hostname rabbitprueba --name rabbitprueba -P -p 55555:15672 -d -v rabbit:/var/lib/rabbitmq rabbitmq:3.6.10-management
Run Code Online (Sandbox Code Playgroud)
为什么会这样?,我做错了什么吗?,