问题陈述:我需要根据提供的arg从两个不同的url中提取docker(projectA和projectB)。
ARG url=docker-local.artifactory.com/projectA #By default its for A.
RUN echo ${url}
FROM $url
Run Code Online (Sandbox Code Playgroud)
理想的解决方案:
docker build -t hello .应该构建项目A的docker
docker build --build-arg url="docker-local.artifactory.com/projectB" -t hello .应该构建项目 B 的 docker。
当前的问题:
"base name ($url) should not be blank"
Run Code Online (Sandbox Code Playgroud) 我正在尝试查找 pandas 的版本:
def check_library_version():
print("Checking library version")
subprocess.run(f'bash -c "conda activate {ENV_NAME};"', shell=True)
import pandas
pandas.__version__
Run Code Online (Sandbox Code Playgroud)
期望输出:1.1.3
输出:
检查库版本
CommandNotFoundError:您的 shell 尚未正确配置为使用“conda activate”。要初始化您的 shell,请运行
Run Code Online (Sandbox Code Playgroud)$ conda init <SHELL_NAME>目前支持的 shell 有:
- 巴什
- 鱼
- tcsh
- 克森什
- 桀骜
- 电源外壳
有关更多信息和选项,请参阅“conda init --help”。
重要提示:运行“conda init”后,您可能需要关闭并重新启动 shell。
需要澄清的是,我并不是要更新当前运行脚本的环境;而是要更新当前运行脚本的环境。我只是想简单地激活该环境并找出那里安装了哪个 Pandas 版本。
卡夫卡消费者代码 -
def test():
TOPIC = "file_data"
producer = KafkaProducer()
producer.send(TOPIC, "data")
consumer = KafkaConsumer(
bootstrap_servers=['localhost:9092'],
auto_offset_reset='latest',
consumer_timeout_ms=1000,
group_id="Group2",
enable_auto_commit=False,
auto_commit_interval_ms=1000
)
topic_partition = TopicPartition(TOPIC, 0)
assigned_topic = [topic_partition]
consumer.assign(assigned_topic)
consumer.seek_to_beginning(topic_partition)
for message in consumer:
print("%s key=%s value=%s" % (message.topic, message.key, message.value))
consumer.commit()
Run Code Online (Sandbox Code Playgroud)
预期行为 它应该只读取生产者写入的最后一条消息。它应该只打印:
file_data key=None value=b'data'
Run Code Online (Sandbox Code Playgroud)
当前行为 运行代码后打印:
file_data key=None value=b'data'
file_data key=None value=b'data'
file_data key=None value=b'data'
file_data key=None value=b'data'
file_data key=None value=b'data'
file_data key=None value=b'data'
Run Code Online (Sandbox Code Playgroud) 我正在尝试弃用类的属性。
class A:
def __init__(self,
variable1: int,
##to be deprecated
variable2: int )
{....}
Run Code Online (Sandbox Code Playgroud)
预期行为:如果用户尝试使用变量 2,他应该收到警告,指出它已被弃用。